Можно ли заставить Firefox принимать сторонние файлы cookie из заголовка ответа AJAX? - PullRequest
0 голосов
/ 11 ноября 2011

Я пишу код, который отправляет запрос AJAX на наш веб-сервер.Наш сервер выполняет некоторую логику, а затем отвечает некоторым JSON.Он также может ответить заголовком set-cookie:

Set-Cookie: our_organisation=[uuid]; domain=.our_organisation.com; path=/; expires=[soon]

Насколько я могу судить, он работает в Chrome и Safari, но не в Firefox.Firefox примет cookie, если вместо этого будет запрос изображения.Я что-то здесь не так делаю?

У меня уже была проблема, когда я не мог прочитать ответ AJAX на стороне клиента в Firefox;это было исправлено установкой Access-Control-Allow-Origin: * в заголовке ответа.

1 Ответ

2 голосов
/ 12 ноября 2011

Это межсайтовый XMLHttpRequest?

Если это так, для http://dev.w3.org/2006/webapi/XMLHttpRequest-2/ withCredentials по умолчанию установлено значение false, поэтому «флаг учетных данных», используемый для CORS, устанавливается на «ложь», а затем для http://dvcs.w3.org/hg/cors/raw-file/tip/Overview.html устанавливается флаг «блокировать файлы cookie». во время получения HTTP и для http://www.whatwg.org/specs/web-apps/current-work/multipage/fetching-resources.html#fetch это означает, что Set-Cookie заголовки игнорируются. Похоже, что Chrome и Safari просто не соответствуют спецификациям здесь.

Вы можете установить withCredentials = true для объекта XHR для отправки файлов cookie. Но учтите, что если вы это сделаете, вы должны указать фактическое происхождение в Access-Control-Allow-Origin; вы не можете просто использовать *.

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