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

Chrome扩展CSP配置报错排查:已设宽松规则仍遭脚本拦截

解决Chrome扩展CSP与Firebase长轮询脚本加载问题

看起来你遇到的问题确实有点头疼——明明配置了极其宽松的CSP,但Chrome还是报错说只允许script-src 'self' 'unsafe-eval'。我来帮你梳理几个容易遗漏的关键点:

1. 确认Manifest版本(最可能的核心原因)

如果你的扩展用的是Manifest V3,那问题大概率出在这里:V3对CSP的限制比V2严格得多,而且完全不支持你原来的V2风格的CSP写法。

  • V3要求把CSP拆分为extension_pages和sandbox等独立字段,并且有硬性规则:
    • script-src里不能使用*通配符,也不允许unsafe-inline(样式的unsafe-inline是唯一例外)
    • Chrome会自动忽略所有不符合V3规则的CSP指令,导致实际生效的CSP被降级为默认的script-src 'self' 'unsafe-eval',这正好和你看到的报错完全匹配!

针对V3,你需要修改CSP配置为类似这样:

"content_security_policy": {
  "extension_pages": "script-src 'self' 'unsafe-eval' https://myapp-12345.firebaseio.com; 
                      object-src 'none'; 
                      connect-src *; 
                      img-src * data: blob:; 
                      style-src 'self' 'unsafe-inline'; 
                      frame-src *;"
}

这里特意把Firebase的域名明确加到script-src里,因为V3不允许模糊的通配符,必须指定具体的可信来源。

如果你的扩展是Manifest V2,可以试试把Firebase域名明确添加到script-src中(虽然*理论上包含它,但有时候Chrome对扩展CSP的通配符处理存在细微差异):

"content_security_policy": "default-src * 'unsafe-inline' 'unsafe-eval'; 
                            script-src * 'unsafe-inline' 'unsafe-eval' https://myapp-12345.firebaseio.com; 
                            connect-src * 'unsafe-inline'; 
                            img-src * data: blob: 'unsafe-inline'; 
                            frame-src *; 
                            style-src * 'unsafe-inline';"

2. 检查是否有Chrome策略强制覆盖CSP

如果你是在企业环境下使用Chrome,可能存在组策略强制设置了更严格的CSP规则,直接覆盖了你的扩展配置。你可以通过访问chrome://policy页面,查看是否有ExtensionContentSecurityPolicy相关的策略,若有则需要联系管理员调整。

3. 彻底排除缓存干扰

有时候单纯重新安装扩展还不够,Chrome可能残留了旧的CSP缓存。你可以试试:

  • 用隐身模式测试扩展,隐身模式下不会加载缓存的扩展数据
  • 进入chrome://extensions/,开启开发者模式,点击你的扩展的"重新加载"按钮,再右键"检查"后台页面实时查看报错

4. 检查Firebase SDK的加载方式

那个报错的.lp脚本是Firebase Realtime Database的长轮询连接脚本。如果你的后台页面是V3的Service Worker,不能直接用DOM方式加载外部脚本,必须用importScripts(),而且要确保该脚本的域名在CSP的script-src中被明确允许。

另外,如果你是通过CDN加载Firebase SDK,也要确保CDN域名被加入script-src(比如官方CDN的https://www.gstatic.com)。


内容的提问来源于stack exchange,提问作者Miguel Stevens

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.05.13 09:20:23