Почему система входа в систему cookie не работает в iframe? - PullRequest
0 голосов
/ 11 октября 2019

У меня есть два разных сайта в двух разных поддоменах (использующих один домен):

  1. Основной сайт: one.domain.com
  2. Сайт Iframe: two.domain.com

Главный сайт (one.domain.com) создает iframe для two.domain.com, на этом втором сайте есть система cookie для входа в систему, которая запрашивает электронную почту и пароль и отслеживает зарегистрированного пользователя с помощью файла cookie.

Система входа в систему работает нормально, если вы тестируете ее непосредственно на two.domain.com, но когда two.domain.com обернут в iframe, система входа в систему не работает, после некоторого исследования похоже, что эта проблема возникает только в некоторых браузерах (в основном, в safari) ипричина в том, что браузер не позволяет устанавливать cookie в iframe, как это можно исправить?

Ответы [ 2 ]

0 голосов
/ 11 октября 2019

Safari имеет консервативную политику в отношении файлов cookie, которая ограничивает записи файлов cookie только теми страницами, которые пользователь выбрал («перешел на»). Это, вероятно, то, что вызывает проблему. Однако это не относится к поддоменам.

Допустим, вы посещаете domain.com, тогда вы можете установить куки с two.domain.com без прямого взаимодействия с пользователем (iframe).

0 голосов
/ 11 октября 2019

Safari по умолчанию отбрасывает файлы cookie, установленные в iframe, если только хост, обслуживающий iframe, ранее не устанавливал cookie вне рамок iframe. Safari - единственный браузер, который делает это.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...