Как файлы cookie передаются в HTTP-протоколе?
Как файлы cookie передаются в HTTP-протоколе?
Ответ 1
Сервер отправляет в заголовке ответа следующее, чтобы установить поле cookie.
Set-Cookie:
имя =
значение
Если есть набор файлов cookie, браузер отправляет в заголовок запроса следующее.
Cookie:
имя =
значение
Более подробную информацию см. в HTTP Cookie в Википедии.
Ответ 2
Cookies передаются как заголовки HTTP, как в запросе (клиент → сервер), так и в ответе (сервер → клиент).
Ответ 3
Помимо того, что он написал в других ответах, другие детали, связанные с пустым файлом cookie, максимальный возраст файла cookie, независимо от того, был он защищен или нет, также передаются в заголовке ответа Set-Cookie. Например:
Set-Cookie:
имя =
значение [; expires=
дата] [; domain=
домен] [; path=
путь] [; secure
]
Тем не менее, не все эти данные передаются на сервер клиентом при следующем HTTP-запросе.
Вы также можете установить флаг HttpOnly
в конце вашего файла cookie, указав, что ваш файл cookie httponly и не должен разрешаться к доступу, в скриптах по javascript-коду. Это помогает предотвратить атаки, такие как захват сеанса.
Для получения дополнительной информации см. RFC 2109. Также взгляните на Статья Николаса К. Закаса, HTTP файлы cookie.
Ответ 4
создать пример script как resp:
<Предварительно > <код > #!/Bin/Баш HTTP_CODE = 200 мим = текст /html echo -e "HTTP/1.1 $http_code OK\r" echo "Content-type: $mime" эхо echo "Set-Cookie: name = F" Код >затем выполните исполняемый файл и выполните его.
./resp | nc -l-p 12346
Код>
открыть браузер и просмотреть URL-адрес: http://localhost: 1236 вы увидите значение Cookie, которое отправляется браузером
<Предварительно > [aaa @bbbbbbbb] $./resp | nc -l-p 12346 GET/HTTP/1.1 Хост: xxx.xxx.xxx.xxx:12346 Подключение: сохранить жизнь Cache-Control: max-age = 0 Accept: text/html, application/xhtml + xml, application/xml; q = 0.9, image/webp, */*; q = 0.8 Обновить-Небезопасно-Запросы: 1 User-Agent: Mozilla/5.0 (Windows NT 6.1) AppleWebKit/537.36 (KHTML, например, Gecko) Chrome/49.0.2623.112 Safari/537.36 Accept-Encoding: gzip, deflate, sdch Accept-язык: en-US, en; q = 0.8, ru; q = 0.6 Cookie: name = F