0

私はAFNetworkingに比較的慣れていないので、次の問題に対するより良い解決策を見つけたいと思っています.

iOS アプリケーションの開始時に 2 つの AFJSONRequestOperations を使用しています。

AFJSONRequestOperation *operation1 = [AFJSONRequestOperation JSONRequestOperationWithRequest:request1 success:^(NSURLRequest *request, NSHTTPURLResponse *response, id JSON) {
    // do something
}failure:^(NSURLRequest *request, NSHTTPURLResponse *response, id JSON, NSError *error){
    // do something
}];

AFJSONRequestOperation *operation2 = [AFJSONRequestOperation JSONRequestOperationWithRequest:request2 success:^(NSURLRequest *request, NSHTTPURLResponse *response, id JSON) {
    // do something
}failure:^(NSURLRequest *request, NSHTTPURLResponse *response, id JSON, NSError *error) {
    // do something
}];

[operation1 start];
[operation2 start];

両方の操作が完了するのを待って、さらに処理を開始します。

enqueueBatchOfHTTPRequestOperationsWithRequestsこの両方の操作をメソッドに組み合わせることができると思いました。

AFHTTPClient *client = [[AFHTTPClient alloc] init];

NSArray *requests = [NSArray arrayWithObjects:operation1, operation2, nil];

[client enqueueBatchOfHTTPRequestOperationsWithRequests:requests progressBlock:^(NSUInteger numberOfFinishedOperations, NSUInteger totalNumberOfOperations) {
    // track operations
}completionBlock:^(NSArray *operations) {
    // do something
}];

そのため、完了した操作を追跡し、各操作の完了ブロックを個別に実行したいと思います。AFHTTPClientで実行できることはありますか?

4

0 に答える 0