WebService可以有Get、Post、Soap、Document四种方式调用,以下是四种方式的参照说明。
name 属性 说明 HttpGet 添加HTTP GET协议 在追加到HTTP请求URL的查询字符串中传递的方法参数,格式为:?name1=value1&name2=value2...。
返回值被当做简单的XML文档放入HTTP响应的正文中(没有<soap:Envelope>)。
HTTPPost 添加HTTP POST协议 在HTTP请求的正文中传递的方法参数,格式为:name1=value1&name2=value2...。返回值被当做简单的XML文档放入HTTP响应的正文中(没有<soap:Envelope>)。
HTTPSoap 添加Http Soap协议 Soap消息在HTTP请求的正文中发送;Soap响应在HTTP响应的正文中发送。
Documentation添加特殊的Documentation协议 当在启用了此协议的情况下直接请求.asmx页时,Asp.Net运行Helper页创建HTML文档页,
该文档页被传递到提出请求的客户端
这里我们希望通过http://www.tmelearning.com/cards/cards.asmx/GetCard?code=4371c7b1-7d3f-4dcd-af2b-4583294cae4a方式来访问Webservice。
自己定义的webservice中的方法代码如下:【C# code】 1 [WebMethod] 2publicstring GetCard(string code) 3 { 4//这里业务处理代码 5return""; 6 }
处理办法如下: 在web站点的web.config的 <system web>... </system web>内增加如下元素标签: 【XML code】
<webServices> <protocols> <add name="HttpPost"/> <add name="HttpGet"/> <add name="HttpSoap"/> <add name="Documentation"/> </protocols> </webServices>
原理剖析:
通过http请求访问webservice有三种方式,在ie中输入url并传参的方式属于http-get方式。通过增加web.config配置,实现允许get请求即可。
本方转载处:http://hi.baidu.com/herozoudzh/item/110befa90a1326fc15329b9b