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

如何解决Chrome扩展中CSP拒绝加载Stripe脚本的问题?

解决Chrome扩展加载Stripe脚本的CSP错误

核心原因

Chrome扩展的Content Security Policy(CSP)完全由manifest.json控制,你在index.html中设置的meta标签CSP不会生效——这是扩展的安全机制决定的,优先级高于页面自身的CSP配置。当前错误是因为你的扩展CSP的script-src规则没有包含Stripe脚本的源https://js.stripe.com。

具体修复步骤

根据你的扩展使用的Manifest版本(V2或V3),修改manifest.json的content_security_policy字段:

如果你用的是Manifest V3

Manifest V3的CSP采用对象结构配置:

{
  "manifest_version": 3,
  "content_security_policy": {
    "extension_pages": "script-src 'self' https://js.stripe.com 'wasm-unsafe-eval' 'inline-speculation-rules'; object-src 'self';",
    // 若扩展包含service worker,需额外配置对应字段
    "service_worker": "script-src 'self' 'wasm-unsafe-eval';"
  },
  // 其他原有配置...
}

注意:extension_pages覆盖扩展内所有页面(popup、options页等),必须将https://js.stripe.com显式加入script-src列表。

如果你用的是Manifest V2

V2采用字符串格式配置:

{
  "manifest_version": 2,
  "content_security_policy": "script-src 'self' https://js.stripe.com 'wasm-unsafe-eval' 'inline-speculation-rules'; object-src 'self';",
  // 其他原有配置...
}

额外检查

  • 无需在permissions字段添加https://js.stripe.com——CSP已允许加载该源的脚本,权限字段主要控制扩展能否发起网络请求(若后续代码需向Stripe API发送请求,才需添加对应host权限)。
  • 修改完成后,务必在chrome://extensions/页面点击「重新加载」,让新的CSP配置生效。

验证

重新打开扩展页面,查看控制台是否仍有CSP错误。若Stripe脚本成功加载,说明配置生效。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.07.22 16:34:57