Xce*_*eno 8 javascript google-chrome web-worker content-security-policy
我正在开发几个使用网络工作者的应用程序,所有这些应用程序都使用最新版本Chrome V63.0.3230.132
.
这是我在控制台上看到的错误消息:
[仅限报告]拒绝从' http:// localhost:8080/d04af186322390d53036.worker.js ' 创建工作人员,因为它违反了以下内容安全策略指令:"worker- src'none '".
我也注意到其他一些网站的行为方式相同.
显然,创造该工人的方式并不重要.我在使用worker-loader的react应用程序中尝试了它,但也在我手动创建它的简单JS演示中.错误保持不变.
我已经安装了所有CSP标头,并且manifest.json
使用正确的CSP条目更新了我的文件也无济于事.
所有其他浏览器都正常工作.
有人可以确认或解释这种行为吗?
Geo*_*rge 13
更新:在这种情况下,问题是由于安装并启用了uMatrix插件而导致的问题.即使插件关闭,问题仍然存在.因此,有两种方法可以解决这些令人困惑的错误:
详情请访问https://github.com/gorhill/uMatrix/issues/926#issuecomment-359905357
历史的初步答复.
Xceno,您是否确认Chrome确实无法加载该工作人员?
我看到了完全相同的错误,但...... SW确实有效.也许这只是来自Chrome的假阳性错误.
这是我的代码以及我在控制台中看到的内容
navigator.serviceWorker.register('/sw.js').then(function(registration) {
console.log('ServiceWorker registration successful with scope: ', registration.scope);
// ... some other code
}
Run Code Online (Sandbox Code Playgroud)
控制台输出:
defer.js:36 [Report Only] Refused to create a worker from 'https://.../sw.js' because it violates the following Content Security Policy directive: "worker-src 'none'".
defer.js:37 ServiceWorker registration successful with scope: https://.../
Run Code Online (Sandbox Code Playgroud)
在我的情况下,SW实际上已成功安装并按设计工作.
归档时间: |
|
查看次数: |
1381 次 |
最近记录: |