使用AFNetworking和NSOperationQueue对条件HTTP请求进行串行排队

时间:2013-03-21 02:31:16

标签: ios objective-c macos afnetworking nsoperation

我正在重构一些现有的代码。假设前一个HTTP请求返回HTTP状态200(OK),它有大约20个串行执行的HTTP请求。如果状态不是200,则该过程停止。当前代码是一堆代理回调,实例变量,一个巨大的switch语句,以及每个调用的单独方法。

我想改用AFNetworking。我想我需要制作一系列AFJSONRequestOperation个对象并将它们放入NSOperationQueue中,maxConcurrentOperationCount设置为1,以便它以串行方式运行。

NSOperationQueue的默认行为是继续执行操作,无论上一个操作是否成功。但是,如果其中一个操作调用其失败块,我希望队列取消所有操作(例如,如果HTTP请求返回404(未找到文件))。

由于AFJSONRequestOperation的行为不是很容易配置,我是否需要将其子类化以实现我想要的? AFNetworking还有另一个内置功能,可以让我这么做吗?

0 个答案:

没有答案