Как получить JSON из метода AFNetworing 2.0 GET

#ios #arrays #json #afnetworking-2

#iOS #массивы #json #afnetworking-2

Вопрос:

Я использую AFNetworking для одновременного выполнения нескольких вызовов API в Instagram. Я использую запрос получения AFNetworking 2.0 AFHTTPSessionManager.

Я использую цикл for для создания URL-адреса, для которого требуется идентификатор местоположения, который я ищу. Затем цикл for выполняет в этом случае 3 отдельных вызова API и сохраняет каждый ответ в массиве.

Затем я создаю изменяемый массив для хранения объектов в массиве. Мне нужно получить изменяемый массив, как только в нем будут все три объекта. Я попытался передать данные другому методу, но затем столкнулся с той же проблемой — не могу использовать массив, пока не будет запущен предыдущий метод.

     -(void)sendGetRequestForLocationMedia:(NSMutableArray*)mutableArray{
   for (int i = 0; i<3; i  ) {
      NSString *getLocationMediaString = [[NSString alloc]initWithFormat:@"locations/%@/media/recent?client_id=%@", self.locationIDObjectArray[i], client_id];
       NSLog(@"getLocationMediaString %@", getLocationMediaString);

        [[LPAuthClient sharedClient]GET:getLocationMediaString parameters:nil success:^(NSURLSessionDataTask *task, id responseObject) {
            {
                NSHTTPURLResponse *httpResponse = (NSHTTPURLResponse *)task.response;
                if (httpResponse.statusCode == 200) {
                    dispatch_async(dispatch_get_main_queue(), ^{

                        _locationMediaArray = responseObject[@"data"];
                        if (!_locationMediaJSONArray) {
                            _locationMediaJSONArray = [[NSMutableArray alloc]init];
                        }

                        for (NSDictionary *dictionary in _locationMediaArray) {

                            [_locationMediaJSONArray addObject:dictionary];
                        }

                    });
                }
            }
        } failure:^(NSURLSessionDataTask *task, NSError *error) {
            NSLog(@"Failure %@", error);
        }];
   }

}