我当前的 Helmet 配置阻止了 SVG 加载到我的 express 应用程序上。我的应用程序尝试从 Ionicons 加载 SVG 文件,这需要使用以下脚本:
<script src="https://unpkg.com/ionicons@5.4.0/dist/ionicons.js"></script>
在我的 app.js 文件中,我有以下 ContentSecurityPolicy 配置:
app.use(
helmet({
contentSecurityPolicy: {
directives: {
...helmet.contentSecurityPolicy.getDefaultDirectives(),
"img-src": ["'self'", `${process.env.AWS_OBJECT_URL}`],
"script-src": ["'self'","https://unpkg.com/"],
},
},
}));
常规图像加载正常,但 SVG 不加载。在 Helmet 指令下,我试图允许来自 Ionicon 域(即https://unpkg.com)的必要脚本,但我收到以下错误消息:
内容安全策略:页面的设置阻止了内联资源的加载(“script-src”)。
任何想法将不胜感激。谢谢