Stripe Checkout 在 Firefox 中不起作用

Posted

技术标签:

【中文标题】Stripe Checkout 在 Firefox 中不起作用【英文标题】:Stripe Checkout not working in Firefox 【发布时间】:2016-12-07 19:13:33 【问题描述】:

我已经通过 php 库在我的 Wordpress 网站上集成了 Stripe Checkout。

一切都很好,但在 Firefox 中,Stripe iFrame 会引发错误:

“安全策略:指令‘frame-src’已被弃用。”

这就是外部 iFrame 的样子

<iframe
   allowtransparency="true"
   style="
      z-index: 2147483647;
      display: none;
      background: rgba(0, 0, 0, 0.004) none repeat scroll 0% 0%;
      border: 0px none transparent;
      overflow-x: hidden;
      overflow-y: auto;
      visibility: visible;
      margin: 0px;
      padding: 0px;
      position: fixed;
      left: 0px;
      top: 0px;
      width: 100%;
      height: 100%;
   "
   src="https://checkout.stripe.com/m/v3/index-af884f1198ee56a57968.html?distinct_id=3cc4aac1-0c17-892b-6ce9-340ee07ea9b2"
   name="stripe_checkout_app"
   class="stripe_checkout_app"
   frameborder="0"
>
...
</iframe>

【问题讨论】:

【参考方案1】:

这只是一个警告,而不是错误。您可以放心地忽略它。它将在未来的版本中消失,因为 frame-src 在 CSP 级别 3 中未被弃用:https://w3c.github.io/webappsec-csp/#changes-from-level-2。

【讨论】:

很高兴知道,谢谢!但是怎么会打断我的JS呢? 我很确定您的错误与此警告无关。您是否有任何可能干扰 Checkout 的浏览器扩展程序?您可以尝试在隐身窗口中查看是否发现相同的错误吗? 是的,你是对的,firefox 只是无法识别 span 元素上的点击事件 顺便说一句,我联系了 Stripe,这就是他们的回答:“正如您在 w3.org/TR/CSP2/#changes-from-level-1 中看到的那样,child-src CSP 指令已弃用并取代了 frame-src CSP 指令。我们的文档清楚尚未更新以反映此更新。因此,我建议您使用 child-src 指令而不是 frame-src 指令。" 我认为回复您的人可能会感到困惑,并认为您在谈论您自己的 CSP,而不是 Checkout 的。无论如何,很高兴你把它解决了! :)

以上是关于Stripe Checkout 在 Firefox 中不起作用的主要内容,如果未能解决你的问题,请参考以下文章

Stripe - 如何在 Checkout.Session 中获取账单地址信息

使用 Python Flask 自定义 Stripe Checkout

如何在 Stripe Checkout 中添加增值税?

新 Stripe Checkout 中的税率

Stripe Checkout 会话中的试用期

Stripe Checkout 示例从 localhost 遇到 CORS 错误