如何根据koa中的文件类型设置额外的content-security-policy?

时间:2017-11-07 20:46:30

标签: node.js koa koa2

目标是为svg文件设置特殊规则,

Plotly.downloadImage(gd, {scale: 2, width: 600, height: 800})

对于第一条规则,我们可以做到

server {
    add_header Content-Security-Policy "default-src 'none'; child-src https://www.youtube.com; font-src 'self' https://fonts.gstatic.com; frame-ancestors 'none'; frame-src https://www.youtube.com; img-src 'self'; media-src 'self'; script-src 'self'; style-src 'self' https://fonts.googleapis.com";

    location ~ \.svg$ {
        add_header Content-Security-Policy "default-src 'none'; frame-ancestors 'none'; style-src 'self' 'unsafe-inline'";
    }
}

svg文件的第二行怎么样。

1 个答案:

答案 0 :(得分:1)

只需使用正则表达式

const svgPattern = /.+\.svg$/;
if (filename.test(svgPattern)) {
  // add required header
}