我正在重构一些现有的代码。假设前一个HTTP请求返回HTTP状态200(OK),它有大约20个串行执行的HTTP请求。如果状态不是200,则该过程停止。当前代码是一堆代理回调,实例变量,一个巨大的switch
语句,以及每个调用的单独方法。
我想改用AFNetworking。我想我需要制作一系列AFJSONRequestOperation
个对象并将它们放入NSOperationQueue中,maxConcurrentOperationCount
设置为1
,以便它以串行方式运行。
NSOperationQueue的默认行为是继续执行操作,无论上一个操作是否成功。但是,如果其中一个操作调用其失败块,我希望队列取消所有操作(例如,如果HTTP请求返回404(未找到文件))。
由于AFJSONRequestOperation的行为不是很容易配置,我是否需要将其子类化以实现我想要的? AFNetworking还有另一个内置功能,可以让我这么做吗?