0

manifest.json に次の行を追加して chrome 拡張機能を作成し、ajax リクエストを介してデータを取得できるようにしました。

"content_security_policy": "script-src 'self' http://localhost; object-src 'self'",

ライブ サイトで拡張機能をテストしたいので、次のように変更しました。

"content_security_policy": "script-src 'self' http://www.example.com; object-src 'self'",

しかし、Chrome を起動しても拡張機能が初期化されません。

4

2 に答える 2

1

クロスオリジン XHR を作成するために、CSP を気にする必要はありません。マニフェストに追加する必要があるのは、アクセスする必要があるホストのホスト権限です。詳細については、 https://developer.chrome.com/trunk/extensions/xhr.htmlを参照してください。

一方、拡張機能が外部 Web サーバーからスクリプト (<script src="..."></script>) をロードする場合は、CSP に注意する必要があります。まず、スクリプトをホストするサーバーは HTTPS である必要があります。次に、 https://developer.chrome.com/trunk/extensions/contentSecurityPolicy.html#relaxing-remote-scriptで説明されているように、CSP で whilelist します。

「script-src」で HTTP オリジンをホワイトリストに登録することは、中間者攻撃やその他のセキュリティの使用を防ぎ、拡張機能が読み込まれないようにするために禁止されています。

于 2013-02-24T06:38:24.250 に答える
0

アクセス許可を追加しましたか。そうでない場合は、これを試してください。うまくいくことを願っています

,
 "permissions": [
   "http://www.example.com/*", 
   "tabs"
 ],
"content_scripts": [
  {
    "matches": [
        "http://www.example.com/*"
    ],
    "js": [
        "js/myScript.js"
    ]
  }
]
于 2013-02-23T18:33:41.370 に答える