每次找不到页面资产(包括图像)(即返回 404)时,Chrome 开发人员工具控制台都会记录错误。
在我的工作中,我经常在第三方提供图像并且在开发过程中可能无法使用的站点上工作。让每个丢失的图像在控制台中显示为错误会使其他更重要的错误(例如 JavaScript 错误)更难以注意到。
是否有设置可以停止控制台将未找到的图像记录为错误?
或者是否有某种方法可以通过与您可以在“网络”选项卡中过滤请求的条件相同的条件来过滤控制台消息?
每次找不到页面资产(包括图像)(即返回 404)时,Chrome 开发人员工具控制台都会记录错误。
在我的工作中,我经常在第三方提供图像并且在开发过程中可能无法使用的站点上工作。让每个丢失的图像在控制台中显示为错误会使其他更重要的错误(例如 JavaScript 错误)更难以注意到。
是否有设置可以停止控制台将未找到的图像记录为错误?
或者是否有某种方法可以通过与您可以在“网络”选项卡中过滤请求的条件相同的条件来过滤控制台消息?
Chromium 团队已经“开始”了这方面的工作:https : //code.google.com/p/chromium/issues/detail? id =96212
更新:该功能请求已于 2013 年 3 月 18 日关闭。我不确定此功能首次出现在哪个 Chrome 版本中,但我可以在我的 Chrome v33.0.1750.152 (Linux) 中确认控制台过滤选项。
更新 2:目前,当输入过滤器(纯文本或正则表达式)时,它会针对消息文本(例如GET http://example.com/foobar 404 (Not Found)
)以及右侧链接的文本(例如test.html:65
)进行测试。(我已经向Chromium提交了一个问题来跟踪这个。)
作为解决方法,请使用正则表达式过滤器,例如:
^(?!.* 404 \(Not Found\))(?!.*[file name])
[file name]
右侧链接中的文件名在哪里。
例如,如果我的页面是test.html
,那么^(?!.* 404 \(Not Found\))(?!.*test\.html)
将起作用。
注意:这也将过滤掉消息文本中具有文件名的消息。我不确定现在有没有办法解决这个问题。
更新(2019-06-05):这个表达式将过滤掉我当前版本的Chrome(75.0.3770.80)中的404s:
-/404\s\(Not\sFound\)$/
在处理每个标记之前,过滤似乎首先用空格分割过滤器字符串,但它也会在正则表达式内分割空格,因此\s
's 是必要的。
从技术上讲,这将过滤掉以(不区分大小写)字符串“404(未找到)”结尾的任何消息,包括console.log
消息。
在 chrome 开发人员工具中,它位于“控制台”选项卡下。单击“过滤器”,它将作为复选框出现在过滤器行上。
作为替代答案,您可以在开发服务器上运行一些 javascript 来更改违规图像的 src 属性(只需确保不要将其发布到您的生产环境!)。
如果你不希望真正的javascript添加到页面(可以理解),你很可能通过镀铬插件(可能是运行在页面加载脚本的Greasemonkey - tampermonkey铬克隆)。
nb 感谢您的反馈,特别是要使其工作,它需要在 dom 准备好之后和图像加载之前发生在一个事件中。
在您的应用程序中,在您的“catch”语句中......在“console.warn”下记录异常......知道它适用于萤火虫。在 Firebug 中,您可以在“警告”选项卡下找到这些“错误”。我想 Chrome 开发者工具也是如此。
实际上前一天做了类似的事情..我的应用程序会因某些错误而停止,因此,我改为使用“try”和“catch”块。我的捕获看起来像: catch (e) { console.warn(e); }