2016-11-08 194 views
5

我用SBT建立一個播放斯卡拉種子項目,並添加一個簡單:Play框架 - 內容安全策略設置不起作用?

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

但是當我啓動該項目,並單擊按鈕。控制檯給出錯誤輸出:

localhost /:17拒絕執行內聯事件處理程序,因爲它違反了以下內容安全策略指令:「default-src *」。 「內聯不安全」關鍵字,散列('sha256 -...')或一個隨機數('nonce -...')是啓用內聯執行所必需的。還要注意'script-src'沒有明確設置,因此'default-src'被用作後備。

application.conf

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

只需按照官方文檔play-securityheaders

我錯過了什麼或者得到錯誤的路徑依然原因不能叫內聯腳本?

+0

你解決了這個問題嗎? – nobody

回答

0

我有同樣的問題,找到解決方案後2小時擺弄它。
我正在使用編譯時依賴注入,並將應用程序mixin 從HttpFiltersComponents更改爲NoHttpFiltersComponents解決此問題。