- 问题代码
-(void)webView:(WKWebView *)webView didFailNavigation:(WKNavigation *)navigation withError:(NSError *)error
{
//弹出空白提示视图
}
- 问题原因
这是因为代理方法中检测到了NSError其中的一个NSURLErrorDomain类型的错误:NSURLErrorCancelled) = -999
。
- 原因解析
最有可能的情况是:先加载我们设置好的第一个请求,然后网页在第一个请求完成之前,另外加载了一个URL(即使相同的URL重新加载)。
的确是有部分第三方的网页的确有这种重定向,或者自动跳转的问题。这种不可控的情况,只能选中忽略这种错误。
- 解决方案
取出error,专门忽略这种错误。
-(void)webView:(WKWebView *)webView didFailNavigation:(WKNavigation *)navigation withError:(NSError *)error
{
if (error.code==-999) {
return;
}
//balabala...
}
网友评论