有没有办法从WCF服务接受HTTP正文中的文本参数?
例如,name=aabbcc&age=14
答案 0 :(得分:0)
是的!您可以使用 GET 和 POST 发送参数。如果您要发送一个或两个参数,就像您在问题中发布的一样,那么您可以使用 GET 但不利的一点是您的数据将附加在查询字符串中,它将会可见。
[OperationContract]
[Webget(UriTemplate = "/name={name}&age={age}")]
string MyGETMethod(string name, string age);
在您的实施中:
string MyGETMethod(string name, string age)
{
return "You entered Name: "+name+" and Age: "+age;
}
测试此方法。打开浏览器并写下这样的URL:
http://localhost:8080/YourServiceName/name=myname&age=10
对于 POST 方法,请将 OperationContract 设为:
[OperationContract]
[WebInvoke(Method = "POST" , UriTemplate = "nameandage", RequestFormat=WebMessageFormat.JSON)]
string MyPOSTMethod(string name, string age);
为此,您必须创建POST客户端。