отмена загрузок с помощью AFNetworking с помощью cancelAllHTTPOperationsWithMethod не работает
-
12-12-2019 - |
Вопрос
Я застрял при отмене загрузок с помощью AFNetworking.В моем приложении пользователь может запускать загрузку одного фильма следующим образом:
NSURLRequest *request = [NSURLRequest requestWithURL:[NSURL URLWithString:urlString]];
AFHTTPRequestOperation *operation = [[AFHTTPRequestOperation alloc] initWithRequest:request];
[operation setCompletionBlockWithSuccess:^(AFHTTPRequestOperation *operation, id responseObject)
{
//do success stuff
}
failure:^(AFHTTPRequestOperation *operation, NSError *error)
{
NSLog(@"Error downloadMovie: %@", error);
}];
[operation start];
Это прекрасно работает.Но как я могу принудительно остановить загрузку?Я читал об использовании этого метода:
cancelAllHTTPOperationsWithMethod
Если я использую его таким образом, он ничего не делает:
AFHTTPClient *client = [[AFHTTPClient alloc] initWithBaseURL:@"http://www.xyz/mymovie.mp4"];
[client cancelAllHTTPOperationsWithMethod:nil path:@"http://www.xyz/mymovie.mp4"];
Как правильно отменить загрузку?
Спасибо заранее.
Решение
AFHTTPRequestOperation
является подклассом NSOperation
, который имеет -cancel
метод.Используйте это.
Не связан с StackOverflow