我试图加载一些外部JavaScript,但Chrome没有它。
为了清楚起见,我使用bookmarklet创建了一个新的脚本元素,将src属性更改为我的源代码,然后将其附加到头中。
下面是代码:
javascript:var script=document.createElement("script");script.src="URL";document.getElementsByTagName('head')[0].appendChild(script);不幸的是,Chrome的交叉来源读取阻塞算法阻止我将源注入标头.我认为这是因为上述源文档只是纯文本,而不是一个可接受的JavaScript文件。
有什么解决办法吗?
发布于 2021-09-16 22:14:43
有许多网站,因为CSP ()不允许您从其他URLS加载脚本。您应该检查要向其中注入脚本的网站的CSP头。
关于CSP的更多信息:
更新
我看到你编辑你的问题(在我最初的回答之后),现在你问具体的关于CORB的问题。在这种情况下,您必须确保脚本重放正确的content-type头。如果您的脚本doens不返回,text/javascript将不会执行它。
如何为JavaScript文件提供服务?如果你能提供更多的细节,我们可以尽力帮助你。
通常,服务器会为JS文件提供正确的头。有一些例外。例如,当用户将JS文件上传到GitHub时,GitHub将在不使用内容类型头的情况下提供JS文件。这是因为他们不希望一个只信任GitHub的网站管理员在他的网站上执行用户上传的脚本(到GitHub)的风险。
更多信息:
https://stackoverflow.com/questions/69215740
复制相似问题