使用AFNetworking对许多JSON请求进行排队并保存其响应

时间:2013-03-24 19:40:40

标签: ios objective-c ios6 nsurlconnection afnetworking

我是AFNetworking的新手,我有兴趣使用它来处理几十个JSON请求(例如,使用一个响应JSON的Web服务API),但我在理解时遇到了一些麻烦我应该怎么做。

有人能提供一些关于如何实现这一目标的见解吗?就像我说的那样,我是图书馆的新手,所以如果你用代码解释,我将非常感激。

有关我正在尝试做的更具体的示例,这里是我正在使用的Clear Read API,您将URL作为参数传递到URL并返回JSON响应(API提取来自URL的文章,删除了另一个膨胀)。

示例网址:http://api.thequeue.org/v1/clear?url=http://blogs.balsamiq.com/product/2012/02/27/uxstackexchange/&format=json

我将通过该服务获取几十个网址并运行它们,并希望保存结果。

我之前在for循环中使用NSURLConnection执行此操作,触发了几十个NSURLConnections,这导致我的数据在结束时非常混乱,超时和诸如此类很多的东西一次性发生。

我知道一次只做几个会更好,AFNetworking对于这类问题似乎很完美,但我真的很困惑我如何使用它/子类或其他任何东西。

1 个答案:

答案 0 :(得分:1)

我建议从Getting Started guide开始。

实际上并没有太多,实际上:为每个要调用的API调用构建AFJSONRequestOperation,并且在成功回调中,适当地处理反序列化的JSON。如果要进行一系列调用,请使用AFHTTPClient a)简单地构建这些操作的一些重复工作,以及b)使用客户端的操作队列将它们全部批处理。然后,您可以使用queue's setMaxConcurrentOperationCount: method一次限制空中请求的数量。