我们可以停止同步请求吗?怎么样?

时间:2012-01-18 10:53:10

标签: iphone objective-c ios

如果有人能帮助我停止向服务器发出同步请求,特别是在从后台移动到前台时,我将不胜感激。

提前致谢。

2 个答案:

答案 0 :(得分:1)

如果你使用普通的NSURLConnection,你可以发送取消命令。 (docs

init喜欢:

 NSURLRequest *request = [[NSURLRequest alloc] initWithURL:url];
    NSURLConnection *connection = [[NSURLConnection alloc] initWithRequest:request delegate:self];

取消如此:

[connection cancel];

答案 1 :(得分:0)

我们在谈论+[NSURLConnection sendSynchronousRequest:returningResponse:error:]吗?在这种情况下,您无法停止此请求。

如果您需要在中途停止网络操作,则需要使用异步API。我个人更喜欢使用NSURLConnection来完成自己的工作,当前任务的工作量最少,通常是NSOperation或只是一些GCD。我强烈建议您学习如何使用NSURLConnection,即使您选择使用其他方法。

另一种方法是AFNetworking,包裹NSURLConnectionNSOperation,您可以拨打cancel