0
比方說,我們有REST客戶端下一個聲明:WebGet和對象作爲WCF REST客戶端GET參數
[ServiceContract]
interface ITestClient
{
[OperationContract]
[WebGet(UriTemplate = "SetData/?d1={d1}&d2={d2}")]
void SetData(string d1, string d2);
}
我想塗時用下一個簽名(HTTP GET)使用它:
[ServiceContract]
interface ITestClient
{
[OperationContract]
[WebGet(UriTemplate = "SetData/?")]
void SetData(SetDataRequest setData);
}
[DataContract]
public class SetDataRequest
{
[DataMember(Name = "d1")]
private string Data1 { get; set; }
[DataMember(Name = "d2")]
private string Data2 { get; set; }
}
我希望WCF將SetDataRequest
的實例序列化爲HTTP QueryString。 這是可能的(HTTP POST是不可接受的)?
我沒有訪問服務器的服務器端,所以我綁定到HTTP GET。在這種情況下,HTTP POST不是一個選項。安全通過https協議綁定解決。 – Matej
tbh它可能更容易有一個幫助對象,它只是將其序列化爲字符串。 –
哦,安全性不能通過https來解決,緩存就是一個副作用!人們仍然可以對服務進行跨站點請求僞造攻擊。 –