首页 > 解决方案 > 如果将相应的资源注入到文件 URL 页面中,则会忽略“web_accessible_resources”清单键

问题描述

最近我的 MV3 扩展停止工作(虽然它之前工作)。经过一些研究,我发现注入的脚本/CSS 无法加载,尽管它们已列在web_accessible_resources清单键中。这些必要的资源由我的内容脚本通过document.createElement. 值得注意的是,只有在将这些资源注入到file://打开了本地文件( )的页面中时,才会出现此问题;页面没有问题http://

我收到net::ERR_BLOCKED_BY_CLIENT所有注入资源的错误: 被阻止的错误消息

下面是我清单中的“web_accessible_resources”键:

...
"web_accessible_resources": [
  {
    "resources": [
      "harviewer/*",
      "connection.js"
    ],
    "matches": [
      "<all_urls>"
    ]
  }
],
...

AFAIU 是正确的,否则我会收到另一条这样的错误消息: 在此处输入图像描述

扩展名的“允许访问文件 URLS”复选框被选中: 在此处输入图像描述

我没有安装类似 adblock 的扩展。我也尝试清除浏览器缓存,但没有运气。

那么它是一个错误还是一个功能?当前的 Chrome 开发文档没有提到这种行为。

我制作了一个重现问题的MCVE

标签: javascriptgoogle-chrome-extensionchrome-extension-manifest-v3

解决方案


推荐阅读