2013-02-27 2 views
1

У меня в настоящее время проблема с Firefox, где он получает файл cookie с флагом httponly. Однако, когда последующий ответ отправляется на сервер, запрос не содержит никакого флага httponly (что может быть правильным поведением), однако, когда ответ возвращается, он возвращает файл cookie, однако он не имеет прикрепленного флага httponly, как я полагаю он возвращает его в том же состоянии, что и он.Какое должно быть правильное поведение браузера при отправке и получении httponly cookie через ajax?

Так это правильное поведение? следует ли вручную обновлять состояние httponly файла cookie на сервере для каждого запроса? или должно существовать состояние httponly между вызовами? Я уверен, что в браузере может быть несколько разных действий, но просто предполагайте современные браузеры.

+0

Почему браузер должен отправлять флаги вместе с файлами cookie? Кроме того, поскольку вы упомянули AJAX, почему Javascript должен знать о cookie, чей атрибут HttpOnly указывает на намерение скрыть его от javascript? –

+0

Не следует, вся точка HTTPOnly заключается в том, что вы не можете получить к ней доступ в JS. Запрос здесь состоял в том, что сервер должен был постоянно устанавливать флаг HTTPOnly для последующих ответов, что и делает. – Grofit

+0

Я заметил такое же поведение в сервисе .Net (я не видел его исходного кода), как если бы служебный код игнорировал присутствие файла cookie в запросе и отвечал на cookie с тем же именем и значением. В дополнение к игнорированию файла cookie в запросе это каким-то образом проигнорировало собственную веб-конфигурацию службы, в которой было указано добавить «; HttpOnly; Secure» для каждого файла cookie. Это перезаписывает файл cookie в браузере, в соответствии с пар. 11 раздела 5.3 [Браузер] Модель хранилища, Механизм управления государственными данными HTTP, http://tools.ietf.org./html/rfc6265#section-5.3. –

ответ

0

Через несколько минут после отправки этого я нашел:

Understanding the intended behaviour of HTTPOnly flag

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

+0

В текущем ответе на связанный вопрос подразумевается обратное. Я согласен с автором оригинального вопроса, подозревающего ошибку на сервере, который сбросил флаги. Флаги должны всегда присутствовать в Set-Cookie. Кроме того, я не вижу смысла в повторном отправке тем же файлом cookie. –

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