Safari на iOS выдает SECURITY_ERR: DOM Exception 18 при вызове canvas.toDataURL - PullRequest
0 голосов
/ 29 июня 2019

У меня есть приложение для дизайна футболок (работает на fabric.js 1.7.14), которое уже давно работает на iOS Safari.Теперь, когда я вызываю toDataURL для элемента canvas, Safari выдает ошибку безопасности.Страница, о которой идет речь, находится здесь:

https://ideashirt.pl/projektuj/koszulka-t-shirt-basic-kolor-meska

Самое странное, что ее нельзя воспроизвести локально.Когда я получаю доступ к своему локальному серверу с моего iPhone, все работает нормально (как http, так и https).Но когда вы заходите на страницу ideashirt.pl из Safari на iPhone и добавляете текст на футболку, сценарий завершается неудачно, когда вы хотите добавить товар в корзину.Когда вы обновляете страницу и не изменяете холст, это работает.Элементы добавляются таким же образом, когда вы добавляете их вручную и когда они добавляются из сеанса после обновления.Это заставляет меня думать, что, возможно, ткань каким-то образом портит холст для Safari при изменении элементов на холсте.

1 Ответ

0 голосов
/ 02 июля 2019

Проблема была действительно в CORS. Недавно мы перенесли статический контент в Amazon, и изображения элементов управления тканью (для изменения размера / поворота / удаления), нарисованные на холсте, были доставлены из домена Cloudfront. Странно, что это затронуло только Safari на iOS и некоторые версии FF. Спасибо за помощь!

...