【问题标题】:How to consume a .NET web service in an iPhone app?如何在 iPhone 应用程序中使用 .NET Web 服务?
【发布时间】:2012-07-03 08:33:19
【问题描述】:

我正在创建一个需要与 .Net 网络服务交互的 iPhone 应用程序。我对此做了一些研究,但这个网站上的很多讨论都已经过时了。所以我认为最好再问一次,看看你们中是否有人可以帮助我。

根据我在其他讨论中阅读的内容,我可以使用 NSURLConnection 或 NSXMLParser 来发送和接收数据。人们建议我也可以使用 JSON。我刚刚开始学习网络服务。我只是在返回字符串的 Web 服务上测试一些基本的 Web 方法。没什么复杂的。实现此功能的最佳方法是什么?

谢谢!

更新 - 抱歉,在发布问题之前我应该​​做更多的研究。现在,由于我了解了如何在 .net 上使用 Web 服务,我觉得我提出的问题很愚蠢,并且完全理解反对票。对不起!

【问题讨论】:

  • 这个项目似乎在其他 Stackoverflow 帖子中很受欢迎,code.google.com/p/wsdl2objc 我自己还没有厌倦它,所以不知道它的效果如何。
  • 我之前确实检查过,但它已经过时了。

标签: objective-c ios web-services nsurlconnection nsxmlparser


【解决方案1】:

我认为您应该使用 JSON 格式。解析更快,下载更轻松。 此外,在实施难度上也没有区别。为了解析客户端大小(您的应用程序)上的数据,我建议使用 JSONKit 库 - 据我所知,它是最快的。网上有几个速度测试可用。喜欢this one。 NSURLConnection 也非常有用。您可以获取响应代码、获取数据等。获取数据后,JSON 显然很有用。

干杯!

【讨论】:

    【解决方案2】:

    服务器方法的响应有多简单并不重要。使用 JSON 或 XML 之类的序列化格式的想法是,您可以保证消息 recd.由客户端发出的消息是可接受且可解析的消息。

    Web 服务允许使用 JSON 作为其序列化格式。完成后,您可以使用 Cocoa 内置的 JSON 解析器来解析响应。

    【讨论】:

    • NSURLConnection 呢?还是应该使用 JSON 或 XML 解析器?
    【解决方案3】:

    以下是您可能会用到的一个有用的提示:

    + (NSString*)stringFromURL:(NSString*)urlString
    {
        return [NSString stringWithContentsOfURL:[NSURL URLWithString:urlString] encoding:NSUTF8StringEncoding error:nil];
    }
    

    您可以使用该行从您的服务器获取数据,然后解析它(如果它是 XML 数据)。我通常不使用 XML 解析。相反,我只是在请求 URL 中使用查询字符串并获取一个数据字符串,即我正在寻找的特定值。

    当我使用它时,您可以使用以下方法将从该方法获得的字符串转换为整数或双精度数或许多其他类型:

    int returnedInt = [[self stringFromURL:@"URL"] intValue];
    double returnedDouble = [[self stringFromURL:@"URL"] doubleValue];
    

    希望这至少有一点帮助!如果没有,也许它会帮助其他人。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2018-07-10
      相关资源
      最近更新 更多