2013-10-10 3 views
6

У меня есть JavaScript, размещенный в домене A, который делает запросы JSONP службе в домене B. Запрос B/Auth устанавливает cookie, содержащий токен аутентификации. Последующие запросы к другим службам в домене B также должны содержать этот файл cookie.Cookie не отправлен с запросом JSONP в IE

В Chrome этот механизм работает отлично; cookie устанавливается, отправляется и данные возвращаются. В IE10 заголовок Set-Cookie возвращается с ответом от B/Auth, но не включается в последующие запросы.

Set-Cookie MINT_SESSIONTOKEN=MyDST={TOKEN}; expires=Thu, 10-Oct-2013 11:57:45 GMT; path=/; HttpOnly 

После некоторых Googling и экспериментирование я обнаружил, что если установить параметры конфиденциальности в IE (Internet Options> Приватность) к низким или Принимать все Cookies, то печенье отправляется с последующими запросами к домену B. Все установки выше, чем низкий предотвращает отправку файла cookie.

Хотя это решает проблему, для меня это не решает проблему для пользователей, которые должны будут перенастроить свои настройки конфиденциальности для получения данных.

Я немного смущен относительно того, что именно происходит под капотом. Я думаю, что IE видит cookie в качестве третьей стороны и не позволяет ему быть установленным (несмотря на то, что cookie установлен и отправлен в домен B), поэтому он не указан в последующих запросах.

Есть ли что-то, что я могу сделать, чтобы IE не блокировал куки-файл без необходимости изменять настройки конфиденциальности своего браузера?

ответ

Смежные вопросы