如何从xcode项目发布Web服务请求

时间:2011-01-12 11:18:14

标签: web-services xcode

我正在尝试从我的iphone应用程序生成一个Web服务调用。

我第一次使用网络服务。

我意识到SOAP请求会是这样的:

我的实际网络服务不在本地。

  

POST /MyFirstWebService.asmx HTTP / 1.1
主持人:localhost
  Content-Type:text / xml; charset = utf-8
内容长度:长度
  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
/肥皂/信封/” >

  <肥皂:车身>
      < HelloWorld xmlns =“http://tempuri.org/”/>
< / soap:Body>
< / soap:Envelope>


我希望从Web服务返回字符串hello world。

这样做的最佳方式是什么?

我还读过一个名为JSON的框架。

这可以在这里有用吗?

1 个答案:

答案 0 :(得分:2)

此链接提供了如何在iphone中使用Web服务的简单说明,它还解释了简单的帖子简单Get和SOAP

Consuming Web Services in iPhone Applications

肥皂与REST的区别

SOAP和RESTful Web服务的理念彼此截然不同。 SOAP实际上是基于XML的分布式计算的协议,而REST更贴近基于Web的裸机设计。 SOAP本身并不复杂;然而,当它与众多扩展一起使用时会变得复杂(通过关联有罪)。

总结他们的优点和缺点:

* SOAP *

优点:

Langauge,平台和传输不可知 旨在处理分布式计算环境 是Web服务的主流标准,因此可以从其他标准(WSDL,WS- *)和供应商的工具获得更好的支持 内置错误处理(故障) 扩展

缺点:

概念上比REST更难,更“重量级” 更冗长 更难开发,需要工具

* REST *

优点:

语言和平台无关 开发比SOAP更简单 学习曲线小,对工具的依赖性较小 简洁,无需额外的消息传递层 更贴近网络的设计和理念

缺点:

假设点对点通信模型 - 不适用于消息可能通过一个或多个中介的分布式计算环境     缺乏对安全性,策略,可靠消息传递等的标准支持,因此具有更复杂要求的服务更难开发(“自己动手”)     绑定到HTTP传输模型