My Chromeアプリには次のマニフェストがあります。
{
"name": ",
"version": "1.0.3",
"manifest_version": 2,
"description": "Chrome Extension for.",
"icons": {
"16": "images/test.png",
"19": "images/test.png",
"256": "images/test.png"
},
"app": {
"background": {
"scripts": [
"background.js"
]
}
},
"sandbox": {
"js": [
"lib/test-api.js"
]
},
"permissions": [
"<all_urls>",
"notifications",
"storage",
"videoCapture"
]
}
eval
を実行するスクリプトファイルがあります。 [〜#〜] csp [〜#〜] とサンドボックスについて読みましたが、まだこのエラーが発生します。
「unsafe-eval」は、次のコンテンツセキュリティポリシーディレクティブ「default-src 'self' chrome-extension-resource:」のスクリプトの許可されたソースではないため、文字列をJavaScriptとして評価することを拒否しました。 「script-src」は明示的に設定されていないため、「default-src」がフォールバックとして使用されることに注意してください。
[〜#〜] csp [〜#〜] リンクに従って、マニフェストにCSP行を追加しようとしましたか?
"content_security_policy": "script-src 'self' 'unsafe-eval'; object-src 'self'"
表示しているのは、notChrome拡張機能 ですが、 Chromeアプリ です。
Chrome拡張機能を使用すると、デフォルトのコンテンツセキュリティポリシーを緩和できます。 Chromeアプリは使用しません。(ソース: Chromeアプリ ; note :このページは Chrome extensions )のCSPドキュメントとは異なります。
次の行は、アプリと拡張機能に適用されます。
sandbox.pages
マニフェストファイルのキー )。あなたはcannot「js」をサンドボックスのキーとして使用しません。Chrome拡張機能では、CSPを緩和できます。たとえば、次のポリシーを使用してeval
を許可します。
"content_security_policy": "script-src 'self' 'unsafe-eval'; object-src 'self'"
アプリを拡張機能に切り替えるには:apps
キーを使用せずに、background
キーを使用します。次のマニフェストを使用すると、バックグラウンドページでeval
を使用できます。
{
"name": "Whatever",
"version": "1.0.3",
"manifest_version": 2,
"background": {
"scripts": [
"background.js"
]
},
"content_security_policy": "script-src 'self' 'unsafe-eval'; object-src 'self'"
}
(例に関係ないためicons
/permissions
を省略しました。不要なためsandbox
を省略しました)