在没有内联脚本的情况下处理图像加载错误

processing image load error without inline-script

为了处理图像加载错误,我曾经写过这样的东西:

<img src="image.png" onError="this.src='defaultImage.png';"/>

但由于我已将内容安全策略添加到我的应用程序中,所以内联脚本不再起作用。
这个问题还有其他解决方案吗?

在浏览器中没有可靠的方法来替换损坏的图像,甚至 onerror 属性在所有主流浏览器中都不起作用 (compatibility table)。

正确且安全的解决方案是通过反向代理提供所有图像,并将其配置为在上游请求失败时发回默认图像。


相关问题:jQuery/JavaScript to replace broken images.