如何为WKWebview添加超时

Ana*_*and 6 ios wkwebview

WKWebView当没有调用默认委托时,如何为超时处理程序编写didFailNavigation.

WKWebView委托被设置和/ DidFinishNavigation或被didFailProvisionalNavigation调用.

AT3*_*T3D 13

使用didFailProvisionalNavigation创建的错误的error.code值,并在那里添加"处理程序"代码:

func webView(webView: WKWebView, didFailProvisionalNavigation navigation: WKNavigation!, withError error: NSError) {

        if error.code == -1001 { // TIMED OUT:

            // CODE to handle TIMEOUT

        } else if error.code == -1003 { // SERVER CANNOT BE FOUND

            // CODE to handle SERVER not found

        } else if error.code == -1100 { // URL NOT FOUND ON SERVER

            // CODE to handle URL not found

        }
    }
Run Code Online (Sandbox Code Playgroud)


Leo*_*Leo 1

使用这个委托方法

 webView:didFailProvisionalNavigation:withError:
Run Code Online (Sandbox Code Playgroud)

文档

当开始为主框架加载数据时发生错误时调用。

并检查错误代码

NSURLErrorTimedOut = -1001
Run Code Online (Sandbox Code Playgroud)

所有错误代码列表

  • 注意:当我请求无效 URL 并收到 NSURLErrorTimedOut 时,调用该委托方法花了一分多钟的时间 (2认同)