1

我刚刚开始使用 AFNetworking,并且在使用 enqueueBatchOfHTTPRequestOperations 将 3 个 AFJSONRequestOperation 对象批处理时遇到了异常。我发现,队列的 completionBlock 偶尔会在所有 AFJSONRequestOperation 完成块触发之前触发。在做了一些研究之后,这似乎与 AFJSONRequestOperation 将响应数据解析为 JSON 相关,它在单独的队列中执行,这意味着请求在解析完成之前向队列报告已完成。

因此,我的问题是 - 我是否可以将 AFHTTPRequestOperation 对象用于我的 3 个请求,并在请求完成块中自己手动解析 JSON?这是否会保证队列完成块仅在所有请求完成后才会触发?

4

1 回答 1

1

我将代码更改为使用 AFHTTPRequestOperation 而不是 AFJSONRequestOperation 并手动解析 JSON,过去几天我一直在测试新版本。我没有看到问题发生过一次,所以我认为可以肯定地说队列完成块在所有请求完成之前触发仅在使用 AFJSONRequestOperation 时发生。

于 2012-11-02T12:38:54.213 回答