Политика безопасности контента с Braintree и Paypal в Safari

Я использую консоль 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, поскольку он чувствителен к этому.


person Daniel James Canil    schedule 10.06.2016    source источник


Ответы (1)


По сути, эти ошибки в Safari носят косметический характер — они не должны влиять на обработку.

Моя проблема была связана с проблемой тайм-аута jquery ajax в сафари, где я установил async на false. На ответ Braintree ушло более 10 секунд, чтобы вернуть ответ, и в результате Safari прервало время ожидания.

Не удалось загрузить ресурс: время ожидания запроса в Safari истекло

person Daniel James Canil    schedule 14.06.2016