iphone - 检测并自定义UIWebView的 "Unable to Read Document"错误

标签 iphone uiwebview uiwebviewdelegate

我正在使用多种不同的文档类型(.xlsx、.jpg 等)测试 UIWebview,并且它可以很好地打开其中的大多数文档。有时,我打开本地文件时,此消息会出现在 Web View 中:

Unable to Read Document
An error occurred while reading the document

我不关心“为什么”会发生这个错误 - 例如,当我(故意)向 UIWebView 提供垃圾文件时,它就会发生。问题是我不知道如何检测“何时”发生这种情况。它不会触发 webView:didFailLoadWithError,也不会触发 NSException (通过 @try@catch>),当我检查 webViewDidFinishLoad 中的文档时,webView.request.HTTPBody 为 null。

有人知道如何检测 UIWebView 无法显示内容的情况吗?

最佳答案

just call uiwebview delegate method 

- (void)webViewDidStartLoad:(UIWebView *)webView
{

}
- (void)webViewDidFinishLoad:(UIWebView *)webView
{
    NSString *html = [webView stringByEvaluatingJavaScriptFromString:
                      @"document.body.innerHTML"];
    if ([html rangeOfString:@"Unable to Read Document."].location == NSNotFound) {

       NSLog(@"NO Error");

    }
    else
    {
//        NSLog(@"File contains Error");
    }

}

关于iphone - 检测并自定义UIWebView的 "Unable to Read Document"错误,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4271379/

相关文章:

ios - 如何在 Xcode 8 上使用自动布局为不同的屏幕尺寸调整对象大小?

ios - 使用 swift 在 webview 页面中查找文本?

c++ - 将 OpenGL 基元转换为 OpenGLES

iphone - 惰性符号绑定(bind)失败 : Symbol not found: _arc4random_uniform

ios - uiwebview 中弹性滚动底部的黑线?

ios - 使用 UIWebView 忽略无效的服务器证书

ios - 使用 RxSwift 在 UIWebView 中捕获点击的链接

ios - 如何在 iOS 和 webviewdifinishload 上禁用超链接和复制/粘贴菜单未调用

iphone - 从 UIPopoverController 拖放到其他 UIView

iphone - 在 UIWebView 中加载 HTTPS