Междоменное чтение файлов cookie / настройка кросс-браузеров - PullRequest
2 голосов
/ 24 февраля 2010

Я знаю, что здесь уже есть несколько тем на эту тему, но я хочу мнение других по этому поводу.

Существует два способа установить / прочитать междоменные куки:

  1. Создание IFrame на A.com, указывающее на страницу на B.com, которая создает cookie и передает эту информацию, создавая другой IFrame на стороне B.com, указывающий на A.com, используя window.name или в location.href. .hash
  2. Страница A.com выполняет XHR / JSONP-вызов веб-службы / страницы B.com со следующими заголовками, а также устанавливает cookie и возвращает значение.

AddHeader ("p3p", "CP = \" IDC DSP COR ADM DEVi TAIi PSA PSD IVAi IVDi CONI HIS INDT CNT \ "")

Поскольку у нас нет postMessage , доступного во всех браузерах, я считаю, что мы должны перейти к одному из случаев, упомянутых выше.

Мой вопрос: какой способ лучше (чище) и зачем его использовать для кроссбраузерности? Использование любой другой платформы JS выходит за рамки этого обсуждения. Если есть другой лучший способ, пожалуйста, укажите здесь!

Спасибо за ваш интеллектуальный вклад заранее! :)

1 Ответ

2 голосов
/ 04 мая 2010

Взгляните на EasyXDM . Это библиотека, которая объединяет кросс-браузерные причуды и предоставляет простой в использовании API для взаимодействия в клиентском скрипте между различными доменами, используя наилучший доступный механизм для этого браузера (например, postMessage , если доступно, другие механизмы, если нет ).

Предупреждение: вам нужно иметь контроль над обоими доменами, чтобы заставить его работать (где «контроль» означает, что вы можете размещать статические файлы на обоих из них).

...