如何在 React 和 Webpack 中使用带 Chrome 扩展 MV3 的 Stripe
How to use Stripe with Chrome Extension MV3 with React & Webpack
我正在 MV3 中开发 Chrome 扩展。我需要将 Stripe 与此扩展集成。此扩展覆盖新选项卡。我正在使用 ReactJs 和 Webpack。
NPM 包使用:React Stripe.js
现在我正在
stripe.esm.js:30 Refused to load the script 'https://js.stripe.com/v3' because it violates the following Content Security Policy directive: "script-src 'self'". Note that 'script-src-elem' was not explicitly set, so 'script-src' is used as a fallback.
我试过添加
"content_security_policy": {
"extension_pages": "script-src 'self' https://js.stripe.com/v3; object-src 'self'; frame-src https://js.stripe.com/v3"
}
在 manifest.json 但我明白了。
我做错了什么? MV3里不可以这么用吗?
感谢您的帮助。
基本上,简单直接的答案是您不能以这种方式进行实施。首先“不再允许Remotely hosted code;扩展只能执行包含在其包中的 JavaScript。”根据 chrome 开发者文档 [0].
Stripe 也在他们的 GitHub 中解决了这个问题,您可以在此处阅读更多信息 [1]。
至于处理这种情况的最佳方法是让您的扩展生成一个 link 到您要创建的外部网站。在那里,您可以创建 CheckoutSession 甚至与 PaymentElements 集成。
我希望这对如何前进有所启发。
[0] https://developer.chrome.com/docs/extensions/mv3/intro/mv3-migration/#feature-summary
我正在 MV3 中开发 Chrome 扩展。我需要将 Stripe 与此扩展集成。此扩展覆盖新选项卡。我正在使用 ReactJs 和 Webpack。
NPM 包使用:React Stripe.js
现在我正在
stripe.esm.js:30 Refused to load the script 'https://js.stripe.com/v3' because it violates the following Content Security Policy directive: "script-src 'self'". Note that 'script-src-elem' was not explicitly set, so 'script-src' is used as a fallback.
我试过添加
"content_security_policy": {
"extension_pages": "script-src 'self' https://js.stripe.com/v3; object-src 'self'; frame-src https://js.stripe.com/v3"
}
在 manifest.json 但我明白了。
我做错了什么? MV3里不可以这么用吗?
感谢您的帮助。
基本上,简单直接的答案是您不能以这种方式进行实施。首先“不再允许Remotely hosted code;扩展只能执行包含在其包中的 JavaScript。”根据 chrome 开发者文档 [0].
Stripe 也在他们的 GitHub 中解决了这个问题,您可以在此处阅读更多信息 [1]。
至于处理这种情况的最佳方法是让您的扩展生成一个 link 到您要创建的外部网站。在那里,您可以创建 CheckoutSession 甚至与 PaymentElements 集成。
我希望这对如何前进有所启发。
[0] https://developer.chrome.com/docs/extensions/mv3/intro/mv3-migration/#feature-summary