У меня есть iframe с сайта A, который загружается с сайта B. Сайт в Iframe использует сессии.
Это прекрасно работает в Firefox, но в сафари, из-за новых правил ITP, требуется обходной путь. Я выбираю вариант 2 из списка, доступного здесь:
https://webkit.org/blog/8124/introducing-storage-access-api/
<script>
function makeRequestWithUserGesture() {
var promise = document.requestStorageAccess();
promise.then(
function () {
// Storage access was granted.
},
function () {
// Storage access was denied.
}
);
}
</script>
<button onclick="makeRequestWithUserGesture()">Play video</button>
Что хорошо работает в устройствах Safari Desktop 13.1 и ios, которые я тестировал в 13.3.
Однако, когда пользователь попадает на сайт B по ссылке в ios приложениях для Facebook, Twitter или Instagram, открывая сайт в веб-просмотре этих приложений - приложение iframe завершается сбоем, так как оно не может получить доступ к куки. В этом случае браузером является WKWebView.
Есть ли исправление для этого?