[英]Error -999 when loading multiple webViews
我正在制作的iOS应用程序可以有多个webView同时加载相同的URL。 导致此错误:
Error Domain=NSURLErrorDomain Code=-999 "The operation couldn’t be completed.
(NSURLErrorDomain error -999.)" UserInfo=0x176b7bc0 {NSErrorFailingURLKey=https://example.com,
NSErrorFailingURLStringKey=https://example.com}
在旧请求完成之前启动新请求时,我读到了这种情况。 如何防止这种情况发生? 谢谢
使用委托方法。 如果要顺序运行它们,请确定哪个视图触发了该方法,然后触发了下一个视图。
- (void) webViewDidFinishLoad:(UIWebView *)webview{
if ( webview == self.wView1 )
{
// stuff
} else if ( webview == self.wView2 ) {
// stuff 2
}
}
我花了几个星期担心这个错误。 我在访问网页时随机得到它。 就我而言,我将其归结为请求页面的速度太快了,因为Web访问是由状态机以代码而不是用户驱动的。
经过大量的搜索,最终我发现了一些讨论,这些讨论无法解释为什么会发生错误,但是感觉到它是UIWebView的功能,而不是您应担心的功能。 指导是忽略它。 我将查看是否可以找到该文章,并在以后找到该答案时对其进行更新。
我更新了我的代码,如下所示,到目前为止,添加代码至今未见任何不良影响。 这将表明它几乎是一个通知,并且所有导致其似乎在UIWebView中得到纠正的东西。 希望您的情况也一样。
- (void)webView:(UIWebView *)webView didFailLoadWithError:(NSError *)error
{
VSSLog(@"Entry: error = %@",error);
// Added this based on net advice. Its a bogus error.
if ([error code] == NSURLErrorCancelled) {
return;
}
... Normal error handling code for proper errors.
}
我不是一个视而不见的人,但是我相信这是可以接受的情况之一。
最后,如果仅使用iOS8,则可以尝试使用新的WKWebView而不是UIWebView。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.