javascript - 捕获 <webview> 中由 HTML 标签引起的 "Failed to load resources"错误

标签 javascript html webview error-handling google-chrome-app

我正在 Chrome 应用中加载网页 webviews .

对于某些<script>,我有时会在控制台中收到“无法加载资源”消息。和<img>标签。我想捕获这些错误,以便可以在 JavaScript 代码中对它们采取行动,而不是让消息出现在控制台中。

我无法修改正在加载的 HTML,即,不能选择使用 AJAX 来加载资源而不是 HTML 标签。 “修复”资源也不是我想要的 - 我只是想要一些 JavaScript 代码来知道缺少什么并从那里获取它。

我可以在代码中捕获这些错误,而不是让消息出现在控制台中吗?

最佳答案

您可以安装<webview> WebRequest API观察者并查看每个资源加载的状态。 这是否没有捕获您所看到的资源加载失败?

var webview = document.querySelector('webview');

webview.request.onHeadersReceived.addListener(function(details) {
  if (details.statusLine.match(/^HTTP.*404/) {
    // some 404 happened...
    window.console.log('Failed url: ' + details.url);
  } else if ...
}, {urls: ['<all_urls>']});

WebRequest API 类似于 Chrome WebRequest API .

关于javascript - 捕获 <webview> 中由 HTML 标签引起的 "Failed to load resources"错误,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28164462/

相关文章:

php - JavaScript 中的 RegExp 在 PHP 中抛出错误

javascript - 在 Typescript 中使用 If-instanceof-statements 是不是很糟糕?

javascript验证电子邮件地址不响应

html - CSS:高度:100%对于容器的初始页面加载是否可靠?

html - Foundation CSS 与菜单冲突

ios - 嵌入 Youtube 视频显示黑屏

android - ScrollView 内的 Android WebView 中的 HTML 滚动事件

javascript - 如何使用ng-model将值传递给输入时间标签

iPhone UIWebView epubs 逐页拆分

java - 如何在for循环中 hibernate 直到完成加载页面android