如何将通过Unpackg获取的特定库(ES模块(添加到我的内容安全策略(CSP(策略中,即不允许所有来自Unpackg的内容?
例如,这就是我添加提供一个库的方式:
<script
type="module"
src="https://unpkg.com/web-social-share@latest/dist/websocialshare/websocialshare.esm.js"></script>
我为我的script-src
策略尝试了各种解决方案,如https://unpkg.com/web-social-share@latest/*
或https://unpkg.com/web-social-share@*
,但都导致了一个错误:
拒绝加载脚本'https://unpkg.com/web-social-share@最新的/dist/websocialshare/websocicalshare.esm.js,因为它违反了以下内容安全策略指令:;脚本src"self"。。。
任何似乎有效的东西都允许Unpack中的所有内容,而我希望避免这些内容。
<meta
http-equiv="Content-Security-Policy"
content="default-src 'self';
script-src 'self' https://unpkg.com/;" />
这仅在CSP级别3中可用:https://www.w3.org/TR/CSP3/#external-散列。但不幸的是,您仍然需要支持级别2。但是,您可以在大多数浏览器中使用子资源完整性。