【问题标题】:IOS - Connect to WebserviceIOS - 连接到 Web 服务
【发布时间】:2012-07-14 13:38:40
【问题描述】:

好吧,在 ios5 中没有真正的方法可以连接到 soap……很遗憾。

我真的不敢相信在 php 中需要 3 行代码的东西,

$client = new SoapClient("scramble.wsdl");
print($mirror = $client->sendAndGetString("hello_world"));

在目标 c 中需要 366 行代码吗?在拥有最多 ria 和网络应用程序之一的设备上。 有点失望-

有没有我不知道的新库?

如果我与我们的 Web 开发团队交谈,他们可能会切换到 IOS 更支持的另一种服务类型。

那还有什么选择呢?

谢谢

【问题讨论】:

  • iOS 上连接 SOAP 的方法有很多种,请看这里的相关问题以获得提示。一般来说,iOS SDK 比 PHP 或 Python 低一点。
  • 我找到了将所有内容加载为 xml 的方法......这不可能。它也是2岁。你能给我一个工作示例的链接吗?你知道图书馆吗?谢谢

标签: ios soap service web


【解决方案1】:

动态类型语言(如 PHP)和静态类型语言(如 Objective-C)在 RPC 协议方面的区别在于,动态语言通常允许您通过反映元数据(例如 WSDL)在运行时包装“任何”服务),静态类型语言通常需要在编译阶段之前执行代码生成步骤。

两个流行的代码生成器似乎是wsdl2objcsudz-c。另见this question

关于替代方案,我在使用 JSON 和 XML-RPC 以及更面向模式的 ThriftProtocol Buffers (ObjC) 方面都有很好的经验。

【讨论】:

  • 感谢克鲁姆鲁尔。你上面提到的链接我实际上已经知道了。我试过 wsdl2objc 和 sudz-c。两者都创建了大量的类。无论如何,哪个不是开箱即用的。整个 SOAP 真的不应该在 iPhone 上使用。我今天查看的大多数博客主题都无处可去。在我看来,解决方案并不是真的有用。我将在服务器端尝试 json 和 php 逻辑,因为它看起来更适合 ios 使用。
【解决方案2】:

我已经写了几篇关于在 iOS 中通过 Wsdl2Objc 使用 SOAP 服务的教程:http://brismith66.blogspot.com/search/label/iPhone%20Development

【讨论】:

    【解决方案3】:

    对我来说,最简单的方法是使用好的工具来生成所有必需的类。我个人使用这个网站:

    http://easywsdl.com/

    它支持相当复杂的网络服务并且非常容易使用。

    【讨论】:

      猜你喜欢
      • 2016-03-26
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2016-09-28
      • 2013-01-12
      • 2011-08-29
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多