You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Chrome扩展未声明权限却被要求说明主机权限的技术咨询

Chrome扩展商店权限审核问题解答

1. 出现该情况的原因

你在manifest的content_scripts中配置了matches: ["https://XXXXXXXXXX/*"],Chrome应用商店会将这个页面匹配规则自动识别为主机权限请求。尽管你没有在permissions字段里显式声明,但content script要注入到指定域名的页面中,本质上就需要获取对应域名的访问权限,这属于主机权限的范畴,因此商店系统会触发权限审核提示。

2. 可采取的解决措施

  • 如实提交权限说明:在审核备注里明确说明,你的扩展仅通过content script在指定域名页面注入代码修改内容,无额外权限请求、无用户数据收集、无敏感操作,matches配置是功能必需的,不存在权限滥用。
  • 显式声明主机权限:在manifest中添加host_permissions字段,明确写出目标域名,比如:
    "host_permissions": ["https://XXXXXXXXXX/*"]
    
    开发模式下不需要显式声明,但商店审核时显式声明能让权限意图更清晰,减少系统误判。
  • 精简代码功能:检查content.js和引入的jQuery,确保代码仅做页面内容修改,没有发起额外跨域请求或其他超出功能描述的操作,降低审核时的权限疑虑。

3. Google的要求并非“误打误撞”

你的扩展确实需要该主机权限才能正常运行。开发模式下Chrome默认允许未打包的扩展使用这类权限,但正式上架时,content script能在指定域名页面加载执行的前提,就是扩展拥有对应域名的主机权限——没有这个权限,你的content script根本无法注入到目标页面,自然无法实现修改内容的功能。

附上你的manifest代码

{
  "manifest_version": 3,
  "name": "Random Content Injector",
  "version": "1.0",
  "description": "Injects a random content menu into XXXXXXXXXX",
  "icons": {
    "16": "open_book_icon_16x16.png",
    "48": "open_book_icon_48x48.png",
    "128": "open_book_icon_128x128.png"
  },
  "content_scripts": [
    {
      "matches": ["https://XXXXXXXXXX/*"],
      "js": [
        "js/jquery-3.6.0.js",
        "js/content.js"
      ]
    }
  ]
}

内容的提问来源于stack exchange,提问作者שלום עו�</think_never_used_51bce0c785ca2f68081bfa7d91973934>

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.06.22 00:32:02