使用 Helmet 中间件时允许使用 SVG

问题描述

我当前的 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 无法加载。在头盔指令下,我试图允许来自 Ionicon 域(即 https://unpkg.com)的必要脚本,但我收到以下错误消息:

内容安全策略:页面设置阻止加载内联资源(“script-src”)。

任何想法将不胜感激。谢谢

解决方法

暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!

如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。

小编邮箱:dio#foxmail.com (将#修改为@)