播放框架 - 内容安全策略设置不起作用?

时间:2016-11-08 07:49:54

标签: playframework

我使用sbt构建一个play-scala-seed项目,并添加一个简单的:

<button id="doclick" onclick="doConsole();">click</button>

但是当我启动项目并单击按钮时。控制台提供错误输出:

  

localhost /:17拒绝执行内联事件处理程序,因为它违反了以下内容安全策略指令:“default-src *”。要么是'unsafe-inline'关键字,哈希('sha256 -...'),要么是nonce('nonce -...')来启用内联执行。另请注意,'script-src'未明确设置,因此'default-src'用作后备。

application.conf

play.http.filters = "filter.Filters"
play.filters.headers.contentSecurityPolicy="script-src 'self' 'unsafe-inline'"

只需关注官方文档play-securityheaders

即可

我是否遗漏了某些内容或者错误的路径导致仍然无法调用内联脚本?

1 个答案:

答案 0 :(得分:0)

我遇到同样的问题,并在2小时后找到解决方案 我正在使用编译时依赖注入,我更改了应用程序mixin 从HttpFiltersComponentsNoHttpFiltersComponents解决问题。