簡體   English   中英

腳本未加載到 chrome 擴展中

[英]Scripts not getting loaded in the chrome extension

我查看了類似的帖子How to set Content Security Policy in Chrome Extension Manifest.json to for Firebase to work 我知道這個問題與 CSP 相關,但是我需要設置的策略是我沒有得到的。

我構建了一個使用jsoneditor的 chrome 擴展,並且該依賴項導致了這個問題。 運行擴展時,我收到以下異常

拒絕加載腳本“data:application/javascript;base64,....”,因為它違反了以下內容安全策略指令:“script-src 'self'”。 請注意,'script-src-elem' 未明確設置,因此使用 'script-src' 作為后備。

未捕獲的 DOMException:無法在“WorkerGlobalScope”上執行“importScripts”:“data:application/javascript;base64,......”處的腳本加載失敗。 在 blob:chrome-extension://nlgocoglacibgkjnhaahkmepblhmelcp/765c13cb-44d4-480c-a6b1-29527766ae5e:1:1

在上面提到的 SO 問題中,網址如

https://cdn.firebase.com https://*.firebaseio.com; 包含在content_security_policy

在我的示例中,腳本不是從域外加載的。 在這種情況下如何設置正確的content_security_policy

問題的解決方法是添加script-src-elem 'self' data: blob:; manifest.json文件的content_security_policy中。

我的看起來像下面這樣,

"content_security_policy": "script-src 'self'; script-src-elem 'self' data: blob:; worker-src 'self' data: blob:; object-src 'self'"

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM