Точка с запятой ;
, строка Cookie:
или какая-либо другая строка?
В спецификации HTTP, какая строка разделяет куки?
Ответ 1
Проверка файлов cookie в HTTP-запросе
Заголовок Cookie:
имеет следующий синтаксис:
Cookie: <Name> = <Value> { ; <Name> = <Value> }
Следовательно, отдельные куки файлы разделяются точкой с запятой.
Настройка файлов cookie в ответе HTTP
С другой стороны, при настройке файла cookie в ответе есть один файл cookie для заголовка Set-Cookie:
:
Set-Cookie: <Name> = <Value> [ ; expires = <Date>] [ ; path = <Path> ] [ ; domain = <Domain> ] // etc…
Чтобы установить несколько файлов cookie, заголовок Set-Cookie
повторяется в ответе HTTP.
Примечания:
- Посмотрите здесь для учебника с примерами и RFC 6265 HTTP State Management Mechanism для нормативной ссылки, отображающей полную информацию о синтаксисе.
- Устаревший RFC 2965 определил альтернативную пару заголовков
Cookie2
иSet-Cookie2
, которые были оставлены. - Устаревшие версии механизма управления государственными протоколами HTTP (RFC 2109 и RFC 2965) предоставил возможность свернуть несколько заголовков
Set-Cookie
(илиSet-Cookie2
) в один. Однако эта сворачивание не рекомендуется с помощью последней спецификации RFC 6265.
Ответ 2
Ответ - это знак запятой ,
.
В разделе 4.2.2 RFC 2109 есть эта спецификация заголовка Set-Cookie
set-cookie = "Set-Cookie:" cookies
cookies = 1#cookie
со следующим утверждением. Неформально заголовок ответа Set-Cookie содержит маркер Set-Cookie:, за которым следует разделенный запятыми список одного или нескольких файлов cookie. (Формальное значение #
в приведенных выше обозначениях определено в RFC 733 в разделе A. НОТАЦИОННЫЕ КОНВЕНЦИИ, пункт 5
Конструкция "#" определяется, аналогично "*", следующим образом:
<l>#<m>element
указывающий не менее
<l>
и не более<m>
элементов, каждый из которых разделен одна или несколько запятых ( "," ).
Да, RFC 2109 устарел RFC 2965, который, в свою очередь, был устаревшим RFC 6265.
Нет, это ничего не меняет в этом контексте, поскольку
- большинство существующих HTTP-серверов и клиентов поддерживают RFC 2109
- RFC 6265 делает не запретить
Set-Cookie
складывание