2016-09-12 2 views
0

Я используюв моем проекте, чтобы получить данные из REST api. Но когда я использую метод, описанный в Github, я получаю предупреждение.dataTaskWithRequest: completeHandler: устарел

Вот мой код:

NSURLSessionConfiguration *configuration = [NSURLSessionConfiguration defaultSessionConfiguration]; 
AFURLSessionManager *manager = [[AFURLSessionManager alloc] initWithSessionConfiguration:configuration]; 

NSURL *URL = [NSURL URLWithString:@"http://httpbin.org/get"]; 
NSURLRequest *request123 = [NSURLRequest requestWithURL:URL]; 

NSURLSessionDataTask *dataTask = [manager dataTaskWithRequest:request123 completionHandler:^(NSURLResponse *response, id responseObject, NSError *error) { 
    if (error) { 
     NSLog(@"Error: %@", error); 
    } else { 
     NSLog(@"%@ %@", response, responseObject); 
    } 
}]; 

[dataTask resume]; 

Мой проект поддерживает IOS 7.0 и выше.

Моя Xcode версия 7.3.1

Есть ли способ преодолеть это предупреждение?

+0

Можете ли вы опубликовать предупреждение здесь? –

+1

: 'dataTaskWithRequest: completionHandler:' устарел – Himanth

+1

@vadian Согласен. Он работает на моей стороне. –

ответ

2

Этот метод относится к AFURLSessionManager. Фактическая подпись (с использованием двух блоков) является

- (NSURLSessionDataTask *)dataTaskWithRequest:(NSURLRequest *)request 
             success:(void (^) (NSURLResponse *response , id responseObject))success 
             failure:(void (^) (NSError *error))failure 
+0

доступна в версии 2.0 или 3.0 –

+0

Это не доступно в версии 3.0. –

4

Он теперь был заменен на следующее AFNetworking 3,0

- (NSURLSessionDataTask *)dataTaskWithRequest:(NSURLRequest *)request 
          uploadProgress:(nullable void (^)(NSProgress *uploadProgress))uploadProgressBlock 
         downloadProgress:(nullable void (^)(NSProgress *downloadProgress))downloadProgressBlock 
         completionHandler:(nullable void (^)(NSURLResponse *response, id _Nullable responseObject, NSError * _Nullable error))completionHandler;