Chrome扩展Manifest V3注入CSS提示无主机权限如何申请?
问题原因
你当前的host_permissions配置错误,该字段用于声明扩展可访问的站点域名匹配规则,不能填入tabs、scripting、activeTab这类API权限,API权限只需在permissions字段声明即可。
修复方案
根据你的扩展使用场景选择对应配置即可:
- 若扩展需要对所有站点页面注入样式,将
host_permissions修改为如下配置:
"host_permissions": [ "<all_urls>" ]
- 若仅需要对特定站点生效,填入对应的域名匹配规则即可,示例如下:
"host_permissions": [ "https://*.baidu.com/*", "https://bilibili.com/*" ]
完整的正确manifest.json示例
{ "name": "...", "description": "...", "version": "1.0", "manifest_version": 3, "background": { "service_worker": "background.js" }, "permissions": [ "tabs", "scripting", "activeTab" ], "host_permissions": [ "<all_urls>" ] }
注意事项
修改配置后需要在扩展管理页面重新加载扩展,新的权限配置才会生效。另外activeTab权限仅在用户主动点击扩展图标触发操作时生效,你当前是监听页面加载自动注入样式的场景,无法通过activeTab权限实现,必须配置对应的站点权限。
内容的提问来源于stack exchange,提问作者Collbrothers
相关产品推荐
相关产品推荐

