标签:
NSURLErrorCancelled (-999)
"当异步加载取消返回。当它执行取消操作上加载资源时,Web 工具包框架委托将收到此错误。请注意,NSURLConnection 或 NSURLDownload 委托不会收到此错误如果取消下载。"
所以,最有可能为这种情况发生的情况为您加载请求,然后加载另一个 (或相同)在第一次完成之前。这可能发生,例如,如果调用 loadRequest
(或 loadHTMLString
) 这样的方法在 viewDidAppear:
可以调用多次;或者快速返回到上次浏览的页面;快速点击 2 链接在 UIWebView ...都会造成这样的问题出现。
最简单的办法是:
-(void)webView:(UIWebView *)webView didFailLoadWithError:(NSError *)error { // NSLog(@"%@",error); if ([error code] != NSURLErrorCancelled) { //给出错误提示 } }
一般的建议是审查如何以及在何处你调用 loadRequest
(或 loadHTMLString
),并可能提供一些代码。
为排除此故障,本人建议将以下痕迹添加到您的 web 视图委托:
- (void)webViewDidStartLoad:(UIWebView *)webView { NSLog(@"Starting to download request: %@", [webView.request.URL absoluteString]); } - (void)webViewDidFinishLoad:(UIWebView *)webView { NSLog(@"Finished downloading request: %@", [webView.request.URL absoluteString]); } - (void)webView:(UIWebView *)webView didFailLoadWithError:(NSError *)error { if ([error code] == NSURLErrorCancelled) NSLog(@"Canceled request: %@", [webView.request.URL absoluteString]); }
如果您检查输出,您应该看到更清楚发生了什么事。
How do I fix NSURLErrorDomain error -999 in iPhone 3.0 OS
标签:
原文地址:http://www.cnblogs.com/Mark-hei/p/5162318.html