【发布时间】:2019-01-19 06:57:16
【问题描述】:
我有以下 svg 图片:
<svg viewBox="0 0 679.26666 170.12"><title id="title">Disclosure Scotland</title>
<desc id="descA">Main Image</desc><defs id="defs6"></defs><g transform="matrix(1.3333333,0,0,-1.3333333,0,170.12)" id="g10">
<g transform="scale(0.1)" id="g12">
<path id="path14" style="fill:#354a8e;fill-opacity:1;fill-rule:nonzero;stroke:none" d="L 4424.6,237.121">
</path>
</g>
</svg>
它具有内联样式,内容安全策略抱怨以下警告:
拒绝应用内联样式,因为它违反了以下内容 内容安全策略指令:“style-src 'self'”。无论是 'unsafe-inline' 关键字,一个哈希 ('sha256-n9prShQTue5kpNbWK2Rpxv1agUjurIm2Wkpn0y7gOvU='),或随机数 ('nonce-...') 是启用内联执行所必需的。
10localhost/:13 拒绝应用内联样式,因为它违反了 遵循内容安全策略指令:“style-src 'self'”。 'unsafe-inline' 关键字,哈希 ('sha256-hyCd2mGzJH6FFMa/YKxkUO5p7ntTtWZ4+813FvHVP5w='),或随机数 ('nonce-...') 是启用内联执行所必需的。
我可以通过像这样配置styleSrc 来消除该错误:
app.use(
helmet.contentSecurityPolicy({
directives: {
defaultSrc: ["'self'"],
styleSrc: ["'self'", "'unsafe-inline'"]
}
})
);
我可以为 svg 配置内联样式吗?
【问题讨论】: