使用谷歌支付时如何防止"Blocked a frame"错误?



我已经为网站配置了Google Pay,它在Google Chrome中工作得很好。但是当我试图在任何不同的浏览器中使用它时,我有一个问题:在支付按钮上点击谷歌打开pay.google.com窗口,然后我按下支付和预加载器永不停止(onPaymentAuthorized回调从未调用)。

我试过谷歌的例子https://jsfiddle.net/34wxopb2/,它工作得很好。在我的网站上,我发现唯一的区别是错误"未处理的承诺拒绝:SecurityError:阻止了一个带有origin的帧";这发生在谷歌付费按钮点击。所以我想这就是问题所在,因为我的代码与上面的jsfiddle示例相同。如何解决?

<script async
  src="https://pay.google.com/gp/p/js/pay.js"
  onload="onGooglePayLoaded()"></script>

问题不是在谷歌支付如我所料。我将paymentsClient实例传递给Vue数据,这改变了它的结构(使其成为代理),这导致了问题。

相关内容

最新更新