无法从HTML/EJS文件运行外部javascript



我正试图在HTML/EJS页面的外部文件中运行javascript。代码如下:

<body onload="initialize()">
//HTML content
<script src="/public/js/gallery.js"</script>
</body>

";initialize(("函数位于";gallery.js"文件问题是,我不断收到一个错误,上面写着:

"拒绝执行内联脚本,因为它违反了以下内容安全策略指令:;script src"self";。启用内联执行需要"unsafe inline"关键字、哈希('sa256-tPMkUWbNPBXQQ3rlbPhILb35szR89eQb3Z41bzLr+wQ='(或nonce('none-…'(">

我在我的";头部;标签。这些包括"<元内容安全策略:script src"self"unsafe inline"gt&"内容安全策略:script src"self",以及";meta-http-equiv=";内容安全策略content=script src";。。。

这太让人抓狂了。。。我花了几个小时试图纠正这个问题。有人能解释一下问题是什么吗。。。???我提前感谢你。当做

"gallery.js"文件如下所示:

addEventListener("load", initialize);
function initialize() {
//do stuff  
}

通过禁用禁止内联脚本的CSP规则来解决这个问题不是一个好主意。内联脚本是XSS攻击的主要载体。

相反,删除内联脚本,并将等效功能放在.js文件本身中。

从HTML中删除onload="initialize()"

addEventListener("load", initialize)添加到JS中。

最新更新