错误:内容安全策略:页面的设置阻止了资源的加载

时间:2016-10-21 20:41:41

标签: javascript html firefox-webextensions

我一直试图将我用jQuery / HTML制作的简单程序移动到Firefox WebExtension中,以便于部署。我得到的错误是:

Content Security Policy: The page’s settings blocked the loading of a resource at https://code.jquery.com/jquery-1.12.4.js (“script-src moz-extension://ef8f1295-1912-4912-ab2e-121053b6781a”).

我确定我没有正确地执行 manifest.json 文件,但对于我的生活,我不知道在哪里:

{
  "description": "Makes tasks from different underwriters uniform",
  "manifest_version": 2,
  "name": "Task Creator",
  "version": ".5",
  "permissions": [
    "http://*/*", "tabs", "https://*/*"
  ],

  "icons": {
    "48": "icons/page-48.png"
  },
  "web_accessible_resources": [
    "style/popUpStyle.css",
    "script/popUpTask.js",
    "script/logicTaskFiller.js",
    "js/autosize.js",
    "style/https://code.jquery.com/ui/1.12.1/themes/base/jquery-ui.css",
    "js/https://code.jquery.com/jquery-1.12.4.js",
    "js/https://code.jquery.com/ui/1.12.1/jquery-ui.js"
  ],

  "background": {
    "scripts": ["background.js"]
  },

  "browser_action": {
    "default_icon": "icons/page-32.png"
  }
}

1 个答案:

答案 0 :(得分:4)

By default, extensions cannot load scripts, or other object resources, from the Internet.您的扩展程序使用的所有CSS和Javascript都应该是扩展程序包的一部分。

(此文档来自Chrome,但完全相同的政策适用于Firefox WebExtensions。)

可以稍微放宽这些限制,但通常应避免这种情况 - 如果用户无法访问Internet,或者他们位于限制性防火墙后面,则从远程服务器加载资源会使您的扩展无法正常工作。此外,addons.mozilla.org will not accept addons which execute remotely hosted Javascript