WebService GET / POST调用和SOAP

时间:2009-11-04 16:11:52

标签: c# .net asp.net wcf web-services

我正在浏览以下链接:

http://support.microsoft.com/kb/819267

这里解释了为Web服务启用HTTP GET / POST调用,以便直接通过浏览器调用服务。

问题:

  1. 我们通过浏览器进行通话 使用GET还是POST?怎么样 决定?

  2. 如果我们使用常规HTTP GET / POST而不是SOAP,在哪里 SOAP进来了吗?或者说错了 Web服务总是使用SOAP协议发送接收消息吗?

2 个答案:

答案 0 :(得分:2)

  1. 如果您通过URL的查询字符串传递所有参数,那么您正在使用GET。如果您使用Fiddler构建请求以明确使用POST,那么您正在使用POST。

  2. 如果您在.NET Web服务中使用GET / POST,则SOAP根本不会涉及到图片。您还会注意到,随着您的服务变得越来越复杂,您将失去通过GET / POST调用服务的能力,因为需要SOAP的复杂性来包装数据。

答案 1 :(得分:2)

  1. 如果您提出的请求有一个有效负载/请求正文,那么将使用POST请求。

  2. SOAP协议定义发送的消息类型,通常作为HTTP POST请求的主体或HTTP响应的主体。并非所有的Web服务都使用SOAP,尽管正确或错误地它已经成为事实上的标准。