美文网首页
ios开发中webview加载失败返回 NSURLErrorDo

ios开发中webview加载失败返回 NSURLErrorDo

作者: 双子末音 | 来源:发表于2017-04-05 16:47 被阅读0次

    最近在开发一个IOS应用应用到webview控件加载网页,问题来了,webview加载网页是需要时间的,如果用户操作比较快,出现一个load页面没有加载完毕的就进入下一个的话,那么就会进入:

    func webView(webView: UIWebView, didFailLoadWithError error: NSError) {

    //TODO

    }

    问题就在这里了,由于我的写的代码,如果报错,我给予他一个返回的页面。这样的代码,每次就出现,如果用户操作特别频繁,一个页面没有加载完毕就进入下一个页面,这时候,

    func webView(webView: UIWebView, didFailLoadWithError error: NSError) {

    的error 加载失败返回 nsurlerrordomain -999 的

    从苹果公司的文档:

    NSURLErrorCancelled (-999)

    "当异步加载取消返回。当它执行取消操作上加载资源时,Web 工具包框架委托将收到此错误。请注意,NSURLConnection 或 NSURLDownload 委托不会收到此错误如果取消下载。"

    所以,最有可能为这种情况发生的情况为您加载请求,然后另一个 (或相同),第一完成之前。这可能发生。例如,如果调用 loadRequest (或 loadHTMLString ) 这样的方法在 viewDidAppear: 可以调用多次。这也据报发生如果你快速点击 2 链接在 UIWebView 。

    那么怎么解决这个问题呢。

    其实,我们只要忽略他就可以了,

    func webView(webView: UIWebView, didFailLoadWithError error: NSError) {

    if error.code == NSURLErrorCancelled {

    return ;  //忽略这个错误。

    }

    相关文章

      网友评论

          本文标题:ios开发中webview加载失败返回 NSURLErrorDo

          本文链接:https://www.haomeiwen.com/subject/pohesttx.html