如何通过afnetworking取消网络请求

Jas*_*hao 16 afnetworking

有没有办法在我使用AFNetworking进行网络请求之前取消所有网络请求(由另一种方法启动的请求)我尝试过如下但不能正常工作:

- (void)sendRequest:(NSUInteger)page{


NSURL *aUrl = [NSURL URLWithString:@"http://www.abc.com/"];
AFHTTPClient *httpClientToCancel = [[AFHTTPClient alloc] initWithBaseURL:aUrl];
[httpClientToCancel cancelAllHTTPOperationsWithMethod:@"POST" path:@"product/like"];
[httpClientToCancel release];

... start a new request here .....
Run Code Online (Sandbox Code Playgroud)

但不行.我只想在开始新请求之前取消所有请求(至少是我上面写的请求).

谢谢!

mat*_*ttt 37

[[httpClient operationQueue] cancelAllOperations];

  • 我认为,重要的是要提到所有被取消的操作的失败块仍然被调用,你必须检查-999的错误代码,它代表"取消操作".因此,取消操作不会阻止运行故障块! (3认同)
  • 这对我不起作用......即使在调用此函数后,数据也会与服务器保持同步.请帮忙!! (2认同)

小智 11

不要创建新AFHTTPClient实例.

尝试 "[self cancelAllHTTPOperationsWithMethod:@"POST" path:@"product/like"];

  • 在这种情况下,什么是"自我"? (4认同)