Я пробовал afnetworking 2.0 и просто пытался выяснить, как отменить определенные задачи. старый путь будет использовать что-то вродеAFNetworking 2.0 отменить конкретную задачу
[self cancelAllHTTPOperationsWithMethod:@"POST" path:@"user/receipts"]
но я не вижу ничего подобного в 2,0
Я создал вспомогательный класс AFHTTPSessionManager
, который дает мне доступ к массиву отложенных заданий и я могу отмените их напрямую, но я не знаю, как идентифицировать одну задачу от другой, поэтому я могу отменить только определенные задачи. Задача имеет идентификатор задачи, но это не похоже на то, что мне нужно.
NSString *path = [NSString stringWithFormat:@"user/receipts"];
[self.requestSerializer setAuthorizationHeaderFieldWithUsername:[prefs valueForKey:@"uuid"] password:self.store.authToken];
[self GET:path parameters:nil success:^(NSURLSessionDataTask *task, id responseObject) {
completionBlock(responseObject);
} failure:^(NSURLSessionDataTask *task, NSError *error) {
errorBlock(error);
}];
сейчас, если бы я хотел отменить этот запрос только, как бы я подошел к этому?
@ phix23 любая идея, почему [задача отменить] по-прежнему вызывая функцию обратного вызова успеха при отмене? –
Я не думал об объявлении метода GET в NSURLSessionDataTask. Большое спасибо ! – JJBoursier