paypal - Safari 中 Braintree 和 Paypal 的内容安全策略

标签 paypal safari braintree content-security-policy

我正在使用 Braintree Drop-In 控制台,最近我主要在 Safari 浏览器中遇到了内容安全策略问题,它返回以下错误并因此导致客户端脚本问题。当单击 PayPal 按钮时会出现这些错误,这会产生一个弹出窗口,并且在弹出窗口关闭后再次将详细信息返回到页面。

[Error] Blocked a frame with origin "https://checkout.paypal.com" from accessing a frame with origin "https://assets.braintreegateway.com". Protocols, domains, and ports must match.

[Error] Blocked a frame with origin "https://www.paypal.com" from accessing a frame with origin "https://assets.braintreegateway.com". Protocols, domains, and ports must match.

有人建议我在设置方法中启用 enableCORS,但没有效果。还建议修改页面策略中的某些指令,但是我没有在我的页面中包含 CSP,所以我认为这不会有任何影响。 即https://developers.braintreepayments.com/reference/client-reference/javascript/v2/best-practices#using-braintree.js-with-a-content-security-policy

我确实尝试添加了一些元标记,但是它导致的错误比以前更多,所以我删除了它们。

有没有人遇到过这个问题,可以建议或提供一个如何解决这个问题的例子?我只有 Safari 遇到问题,因为它对此很敏感。

最佳答案

基本上,Safari 中的这些错误本质上是装饰性的——处理不应受到影响。

我的问题是由于我在 safari 中遇到的 jquery ajax 超时问题 async 设置为 false。 Braintree 响应在生产中需要超过 10 秒才能返回响应,因此 Safari 会超时。

Failed to load resource: Request timed out on Safari

关于paypal - Safari 中 Braintree 和 Paypal 的内容安全策略,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/37738696/

相关文章:

braintree - Braintree 沙盒 API : 'Billing state format is invalid' 上的突然失败请求

paypal - 我应该如何使用 Paypal 获得可靠的结账流程?

javascript - 为什么我的代码不能在所有浏览器中运行?

ipad - 尝试在 iPad 上调试网站,但设备未出现在 Mac 上 Safari 的“开发”菜单下

javascript - Canvas DrawImage 不适用于 IOS Safari

paypal - 无法获得 PayPal/Braintree SDK 访问 token

支付宝支付失败

Magento:无法检索付款方式实例

paypal - 如何启用沙盒帐户的即时付款通知首选项?

ruby-on-rails - Webmock:如何伪造 gzipped 响应?