Iframe localStorage в Safari и Safari mobile
У меня есть функция javascript, которая будет выполняться в iframe моей страницы, чтобы установить localstorage.
На другой странице другой iframe, размещенный в том же домене, попытается прочитать значение.
Схема ниже:
Domain A
|---- iframe - Domain B => Set localStorage
Domain C
|---- iframe - Domain B => Read localStorage
Обе функции localStorage (чтение и запись) размещаются в одном домене (домен B)
В Safari и Safari mobile значение не передается из iframe на странице A в iframe на стр. C.
Он отлично работает в Chrome и Firefox. В Safari он действует так, как будто localStorage iframe относится к домену верхней страницы и не передается через страницы, даже если домен iframe тот же.
Кто-нибудь сталкивается с той же проблемой с локальным хранилищем на сафари?
Ответы
Ответ 1
Проблема с Safari вызвана предпочтением "блокировать куки и другие данные веб-сайта", которое по умолчанию установлено "От третьих лиц и рекламодателей" .
Обновление: в Safari 8, этот параметр - "Файлы cookie и данные веб-сайта: Разрешить использование веб-сайтов, которые я посещаю".
Ожидаемое поведение доступно только в том случае, если пользователь устанавливает этот параметр как "Никогда", как показано на следующем рисунке: http://i.stack. imgur.com/AP4ed.png
Невероятно, что есть лазейка, к сожалению, намерение настройки ясное.