如何取消在UIWebView中发出的请求?

时间:2012-05-17 01:03:25

标签: iphone ios uiwebview

由于issue我无法在NSURLRequest中触发UIWebView超时,我正在尝试使用NSTimer检查是否我在指定的时间内得到了答复。如果我没有,那么我想取消请求并警告用户。

但是:我无法找到取消UIWebView中的当前请求的方法。

你是怎么做到的?

我已设置UIWebView的请求,如下所示:

NSString *theURL = [NSString stringWithFormat:@"https://%@%@", _hostname, LOGIN_PART_URL];
NSString *body = [NSString stringWithFormat:@"Username=%@&Password=%@", _username, _password];

NSMutableURLRequest *request = [[NSMutableURLRequest alloc]initWithURL:[NSURL URLWithString:theURL] 
                                                           cachePolicy:NSURLRequestUseProtocolCachePolicy
                                                       timeoutInterval:_timeoutInSecs];



[request setHTTPMethod: @"POST"];
[request setHTTPBody: [body dataUsingEncoding: NSUTF8StringEncoding]];

[web loadRequest:request];

我可以看到NSURLConnection有一个取消方法,但似乎没有UIWebView的等价物。

我错过了什么?

谢谢! 拉伸:)

1 个答案:

答案 0 :(得分:7)

stopLoading课程中有UIWebView个方法。它符合您的需求吗?

UIWebView Class Reference

  

<强> stopLoading

     

停止加载由接收方管理的任何网络内容。

     

- (void)stopLoading

     

停止主框架或其任何子框架加载过程中的任何内容。如果没有加载内容,则不执行任何操作。