我正在尝试从我的iPhone应用程序生成一个Web服务调用 .
我是第一次使用Web服务 .
我意识到SOAP请求会是这样的:
我的实际网络服务不在本地 .
POST /MyFirstWebService.asmx HTTP / 1.1主机:localhost Content-Type:text / xml; charset = utf-8 Content-Length:length SOAPAction:“http://tempuri.org/HelloWorld”<?xml version =“1.0”encoding =“utf-8”?> <soap:Envelope xmlns:xsi =“http ://www.w3.org/2001/XMLSchema-instance> xmlns:xsd =“http://www.w3.org/2001/XMLSchema”xmlns:soap =“http://schemas.xmlsoap.org / soap / envelope /“> <soap:Body> <HelloWorld xmlns =”http://tempuri.org/“/> </ soap:Body> </ soap:Envelope>
我想从Web服务返回字符串hello world .
做这个的最好方式是什么?
我还读到了一个名为JSON的框架 .
这可能有用吗?
1 回答
这个链接提供了如何在iphone中使用Web服务的简单解释,它还解释了简单的post简单Get和SOAP
Consuming Web Services in iPhone Applications
Difference Between Soap and REST
SOAP和RESTful Web服务的理念彼此截然不同 . SOAP实际上是基于XML的分布式计算的协议,而REST更加贴近基于Web的裸机设计 . SOAP本身并不复杂;然而,当它与众多扩展一起使用时(通过关联有罪),它会变得复杂 .
总结他们的优点和缺点:
*** SOAP ***
优点:
Langauge,平台和传输不可知设计用于处理分布式计算环境是Web服务的主流标准,因此可以从其他标准(WSDL,WS- *)和供应商工具获得更好的支持内置错误处理(故障)可扩展性
缺点:
从概念上来说,比REST更“困难”,“更重”更难以开发,需要工具
*** REST ***
优点:
语言和平台不可知比SOAP小学习曲线更容易开发,更少依赖工具简洁,无需额外的消息传递层更贴近设计和哲学到Web
缺点:
假设一种点对点通信模型 - 不适用于消息可能通过一个或多个中介的分布式计算环境缺乏对安全性,策略,可靠消息传递等的标准支持,因此具有更复杂要求的服务更难开发(“自己动手”)绑定到HTTP传输模型