-2

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

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

谢谢!

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

4

3 回答 3

1

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

干杯!

于 2012-07-02T22:58:02.647 回答
0

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

Web 服务允许使用 JSON 作为其序列化格式。一旦你这样做了,你就可以使用 Cocoa 内置的 JSON 解析器来解析响应。

于 2012-07-02T22:52:31.910 回答
0

您可以在您的案例中使用的一个有用提示如下:

+ (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];

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

于 2012-07-03T03:19:50.660 回答