How do I fix NSURLErrorDomain error -999 in iPhone 3.0 OS

从苹果公司的文档:

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)