使用 underscore.js 时如何修复浏览器 CSP 错误

How do I remedy Browser CSP errors when using underscore.js

过去几年我一直在开发 Web 应用程序,最近通过添加内容安全策略使其更加安全。

我已经能够解决我发现的大部分问题,但我无法解决剩下的一个问题。每当 underscore.js 中出现模板时,CSP 都会抱怨一条错误消息,因为我相信它使用了一个禁忌;作为js代码"new Function(...)".

我在网上看到了其他的推荐,基本上是:

人们还知道其他选择吗?

尝试将您域中的脚本的 Content-Security-Policy header 设置为 unsafe-eval 作为临时解决方法。 http://content-security-policy.com/ 然后尽快转移到模板引擎,例如 Handlebars。您可以将模板放在单独的 html 文件中,并将它们编译成 javascript 作为构建的一部分。这使您在开发时很好地区分 html 和 js,但在生产版本

中为您的用户在浏览器中的性能良好