【问题标题】:Cannot load Chrome extension for local html files (file:/// schema)无法为本地 html 文件加载 Chrome 扩展程序(file:/// schema)
【发布时间】:2015-10-07 05:09:19
【问题描述】:

我发现这个对我的问题非常有用的答案,但它对我不起作用: Can an app or extension open files on system with permission "<all_urls>"?

这是我 manifest.json 的一部分:

...
  "content_scripts": [
    {
      "matches": [<all_urls>], // tried also "file:///*"
...
"permissions": [
    "activeTab",
    "background",
    "tabs",
    "<all_urls>"
  ],
...

我还选中了我的 “允许访问文件 URL” 框。

当我打开本地 html 文件时,开发者工具中的内容脚本选项卡仍然是空的:///

为 http:// url 加载了扩展,没有问题。

任何人都知道是否还有更多或我错过了什么?

【问题讨论】:

  • &lt;all_urls&gt; in matches 应该用引号引起来。但我假设你实际上已经这样做了,这只是一个复制/粘贴错误,因为如果你的清单中有这个,Chrome 会抱怨。
  • 它应该加载 "&lt;all_urls&gt;" + 该复选框,除非您确实有上述错字。

标签: file google-chrome-extension schema content-script


【解决方案1】:

@Teepeemm 和 @wOxxOm 指出缺少的引号 是对的。我的 JSON 很弱。

但有趣的是,在我重新启动 Chrome 之前,Chrome 在重新加载扩展程序时并没有抱怨。此外,它似乎保持了旧版本的加载,这愚弄了我正在工作的。 所以有时甚至需要重新启动 Chrome 才能正常工作 :)

PS。我确实尝试了几种不同的模式,所以是的,我多次单击重新加载按钮。但我注意到重新加载有几秒钟的延迟 - 我使用 Browserify,我的 background.js 是 580 000 行。

【讨论】:

  • 当我尝试在清单中重新加载扩展程序时,Chrome 告诉我:“清单不是有效的 JSON。第 26 行,第 20 列,意外令牌。”你确定你是用那个清单点击“重新加载”吗?
猜你喜欢
  • 2011-04-03
  • 1970-01-01
  • 2019-02-12
  • 2019-10-25
  • 2011-06-18
  • 1970-01-01
  • 2012-12-05
  • 2014-03-21
相关资源
最近更新 更多