Когда мы разбирали общую структуру HTTP запросов и ответов, то одной из частей, из которой эта структура состояла, являлись HTTP заголовки (Message Headers). Давайте сейчас подробнее рассмотрим, что это такое.
Заголовки – это специальные параметры, которые несут определенную служебную информацию о соединении по HTTP. Некоторые заголовки имеют лишь информационный характер для пользователя или для компьютера, другие передают определенные команды, исходя из которых, сервер или клиент будет выполнять какие-то действия.
В зависимости от того, где эти заголовки могут находиться, они разделяются на:
General Headers (Основные заголовки) — должны быть и в запросах и в ответах клиента и сервера.
Request Headers (Заголовки запроса) — используются только в запросах клиента.
Response Headers (Заголовки ответа) — используются только в ответах сервера.
Entity Headers (Заголовки сущности) — сопровождают каждую сущность сообщения.
Каждый заголовок имеет следующий вид:
параметр: значение
Немного о правилах написания, что нужно иметь в виду:
1) Регистр (большие или маленькие буквы) здесь не учитываются. Можно писать и так и так.
2) Пишутся латинскими буквами.
3) После параметра должен идти символ двоеточия (:)
4) Окончанием пары «параметр:значение» служит символ переноса строки.
Вот, примеры некоторых заголовков:
Host: webkyrs.info User-Agent: Mozilla/5.0 (Windows NT 6.1; rv:18.0) Gecko/20100101 Firefox/18.0 Accept: text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8 Accept-Language: ru-RU,ru;q=0.8,en-US;q=0.5,en;q=0.3
На самом деле, количество возможных заголовков, которые можно указать, очень большое. Я не вижу смысла приводить их все здесь.
Если вы знаете английский, то почитать о них можно в оригинале на страницах стандарта HTTP 1.1.
http://tools.ietf.org/html/rfc2616
Кроме того, есть перевод этого стандарта на русский язык здесь:
http://www.lib.ru/WEBMASTER/rfc2068/
Есть еще хорошая табличка, которая опубликована на страницах википедии:
http://ru.wikipedia.org/wiki/%D1%EF%E8%F1%EE%EA_%E7%E0%E3%EE%EB%EE%E2%EA%EE%E2_HTTP
Больше моих уроков по серверному программированию здесь.
Чтобы оставить сообщение, зарегистрируйтесь/войдите на сайт через:
Email - зарегистрироваться / войти