Заголовки
HTTP-заголовки
HTTP-заголовки позволяют клиенту и серверу передавать дополнительную информацию с HTTP-запросом или ответом. HTTP-заголовок состоит из его имени, нечувствительного к регистру, за которым следует двоеточие (:), а затем его значение. Пробелы перед значением игнорируются.
Пользовательские проприетарные заголовки исторически использовались с префиксом X-, но эта конвенция была устаревшей в июне 2012 года из-за неудобств, которые возникали, когда нестандартные поля становились стандартными в RFC 6648; другие перечислены в реестре IANA, исходное содержимое которого было определено в RFC 4229. IANA также поддерживает реестр предлагаемых новых HTTP-заголовков.
Заголовки можно сгруппировать по контекстам:
- Заголовки запроса содержат дополнительную информацию о ресурсе, который необходимо извлечь, или об клиенте, запрашивающем ресурс.
- Заголовки ответа содержат дополнительную информацию об ответе, например, его местоположение или о сервере, предоставляющем его.
- Заголовки представления содержат информацию о теле ресурса, например, его тип MIME или применённое кодирование/сжатие.
- Заголовки полезной нагрузки содержат информацию, независимую от представления, о данных полезной нагрузки, включая длину содержимого и кодировку, используемую для передачи.
Заголовки также можно сгруппировать в зависимости от того, как прокси-серверы с ними работают:
ConnectionKeep-AliveProxy-AuthenticateProxy-AuthorizationTETrailerTransfer-Encoding-
Upgrade(см. также механизм обновления протокола).
- Заголовки конечных точек
-
Эти заголовки должны передаваться конечному получателю сообщения: серверу для запроса или клиенту для ответа. Прокси-серверы промежуточного звена должны повторно передавать эти заголовки без изменений, а кэши должны их хранить.
- Заголовки прыжка за прыжком
-
Эти заголовки имеют смысл только для одного соединения транспортного уровня и не должны повторно передаваться прокси-серверами или кэшироваться. Обратите внимание, что только заголовки прыжка за прыжком могут быть установлены с помощью заголовка
Connection.
Аутентификация
WWW-Authenticate-
Определяет метод аутентификации, который должен использоваться для доступа к ресурсу.
-
Содержит данные для аутентификации пользователя с сервером.
Proxy-Authenticate-
Определяет метод аутентификации, который должен использоваться для доступа к ресурсу через прокси-сервер.
-
Содержит данные для аутентификации пользователя с прокси-сервером.
Кэширование
Age-
Время в секундах, в течение которого объект находился в кэше прокси.
Cache-Control-
Директивы для механизмов кэширования в запросах и ответах.
Clear-Site-Data-
Очищает данные просмотра (например, куки, хранилище, кэш), связанные с запрашиваемым веб-сайтом.
Expires-
Дата/время после которого ответ считается устаревшим.
Pragma-
Заголовок, специфичный для реализации, который может иметь различные эффекты на любом участке цепочки запрос-ответ. Используется для обратной совместимости с кэшами HTTP/1.0, где заголовок
Cache-Controlеще не присутствует. -
WarningУстаревший -
Общая информация об возможных проблемах.
Указатели клиента
HTTP Указатели клиента — это набор заголовков запроса, предоставляющий полезную информацию о клиенте, такую как тип устройства и условия сети, и позволяющий серверам оптимизировать то, что отображается для этих условий.
Серверы проактивно запрашивают у клиента заголовки указателей клиента, которые их интересуют, с помощью Accept-CH. Затем клиент может выбрать включение запрошенных заголовков в последующие запросы.
-
Accept-CHЭкспериментальный -
Серверы могут рекламировать поддержку Указателей Клиента с помощью поля заголовка
Accept-CHили эквивалентного HTML-элемента<meta>с атрибутомhttp-equiv. -
Accept-CH-LifetimeЭкспериментальный Устаревший -
Серверы могут попросить клиента запомнить набор Указателей Клиента, которые поддерживает сервер, на определенный период времени, чтобы обеспечить доставку Указателей Клиента в последующих запросах к источнику сервера.
Ниже приведены различные категории указателей клиента.
Указатели клиента браузера
Указатели агента пользователя (UA client hints) — это заголовки запроса, которые предоставляют информацию о агенте пользователя и платформе/архитектуре, на которой он работает:
-
Sec-CH-UAЭкспериментальный -
Брендинг и версия агента пользователя.
-
Sec-CH-UA-ArchЭкспериментальный -
Архитектура платформы агента пользователя.
-
Sec-CH-UA-BitnessЭкспериментальный -
Разрядность архитектуры процессора агента пользователя (например, "64" бита).
-
Sec-CH-UA-Full-VersionУстаревший -
Полная строка семантической версии агента пользователя.
-
Sec-CH-UA-Full-Version-ListЭкспериментальный -
Полная версия для каждого бренда в списке брендов агента пользователя.
-
Sec-CH-UA-MobileЭкспериментальный -
Агент пользователя работает на мобильном устройстве или, в более общем смысле, предпочитает «мобильный» пользовательский интерфейс.
-
Sec-CH-UA-ModelЭкспериментальный -
Модель устройства агента пользователя.
-
Sec-CH-UA-PlatformЭкспериментальный -
Операционная система/платформа агента пользователя.
-
Sec-CH-UA-Platform-VersionЭкспериментальный -
Версия операционной системы агента пользователя.
Сведения о клиенте устройства
-
Content-DPRУстаревшее Экспериментальное -
Заголовок ответа, используемый для подтверждения соотношения изображения к пикселям устройства в запросах, где для выбора ресурса изображения использовался подсказка клиента
DPR. -
Device-MemoryУстаревшее Экспериментальное -
Приблизительный объём доступной оперативной памяти клиента. Эта информация является частью API памяти устройства.
-
DPRУстаревшее Экспериментальное -
Соотношение пикселей устройства (DPR) — количество физических пикселей устройства, соответствующих одному CSS-пикселю.
-
Viewport-WidthУстаревшее Экспериментальное -
Число, указывающее ширину области просмотра макета в CSS-пикселях. Указанное значение пикселей округляется до ближайшего целого числа (значение по принципу округления вверх).
-
WidthУстаревшее Экспериментальное -
Число, указывающее желаемую ширину ресурса в физических пикселях (то есть внутренний размер изображения).
Сведения о клиенте сети
Подсказки клиента сети позволяют серверу выбирать информацию, исходя из предпочтений пользователя, пропускной способности и задержки сети.
Downlink-
Приблизительная пропускная способность соединения клиента с сервером в Мбит/с. Эта информация является частью API информации о сети.
ECT-
Тип эффективного соединения, который лучше всего соответствует задержке и пропускной способности соединения. Эта информация является частью API информации о сети.
RTT-
Время прохождения запроса туда и обратно (RTT) на уровне приложения в миллисекундах, включая время обработки сервера. Эта информация является частью API информации о сети.
-
Save-DataЭкспериментальное -
Логическое значение, указывающее предпочтение агента пользователя по снижению использования данных.
Условные запросы
Last-Modified-
Дата последнего изменения ресурса, используемая для сравнения нескольких версий одного ресурса. Она менее точна, чем
ETag, но её проще рассчитать в некоторых средах. Условные запросы, использующиеIf-Modified-SinceиIf-Unmodified-Since, используют это значение для изменения поведения запроса. ETag-
Уникальная строка, идентифицирующая версию ресурса. Условные запросы, использующие
If-MatchиIf-None-Match, используют это значение для изменения поведения запроса. If-Match-
Делает запрос условным и применяет метод только в том случае, если хранимый ресурс соответствует одному из указанных тегов ETag.
If-None-Match-
Делает запрос условным и применяет метод только в том случае, если хранимый ресурс не соответствует ни одному из указанных тегов ETag. Это используется для обновления кэшей (для безопасных запросов) или для предотвращения загрузки нового ресурса, если он уже существует.
If-Modified-Since-
Делает запрос условным и ожидает передачи ресурса только в том случае, если он был изменён после указанной даты. Это используется для передачи данных только в случае, если кэш устарел.
If-Unmodified-Since-
Делает запрос условным и ожидает передачи ресурса только в том случае, если он не был изменён после указанной даты. Это гарантирует согласованность нового фрагмента определённого диапазона с предыдущими или для реализации системы оптимистического управления конкурентностью при модификации существующих документов.
Vary-
Определяет, как сопоставить заголовки запроса, чтобы решить, можно ли использовать кэшированный ответ вместо запроса нового ответа от сервера источника.
Управление соединениями
Connection-
Управляет тем, остаётся ли открытым сетевое соединение после завершения текущей транзакции.
Keep-Alive-
Управляет тем, как долго должно оставаться открытым постоянное соединение.
Переговоры о содержимом
Переговоры о содержимом заголовки.
Accept-
Сообщает серверу о типах данных, которые могут быть отправлены обратно.
Accept-Encoding-
Алгоритм кодирования, обычно алгоритм сжатия, который может быть использован для ресурса, отправляемого обратно.
Accept-Language-
Сообщает серверу о языке пользователя, который ожидается получить в ответ. Это лишь подсказка, и не всегда находится под полным контролем пользователя: сервер всегда должен учитывать явные предпочтения пользователя (например, выбор языка из выпадающего списка).
Управление
Expect-
Указывает ожидания, которые должен выполнить сервер для правильной обработки запроса.
Max-Forwards-
При использовании
TRACE, указывает максимальное количество переходов, которые может сделать запрос, прежде чем быть перенаправленным отправителю.
Куки
-
Содержит хранящиеся HTTP-куки, ранее отправленные сервером с заголовком
Set-Cookie. -
Отправляет куки с сервера в пользовательский агент.
CORS
Узнайте больше о CORS здесь.
Access-Control-Allow-Origin-
Указывает, может ли ответ быть общим.
Access-Control-Allow-Credentials-
Указывает, может ли ответ на запрос быть представлен, когда флаг credentials имеет значение true.
Access-Control-Allow-Headers-
Используется в ответ на предварительный запрос предварительного запроса, чтобы указать, какие HTTP-заголовки можно использовать при выполнении фактического запроса.
Access-Control-Allow-Methods-
Определяет разрешенные методы доступа к ресурсу в ответ на предварительный запрос.
Access-Control-Expose-Headers-
Указывает, какие заголовки могут быть представлены в ответе, перечисляя их имена.
Access-Control-Max-Age-
Указывает, как долго результаты предварительного запроса могут быть кэшированы.
Access-Control-Request-Headers-
Используется при отправке предварительного запроса, чтобы сообщить серверу, какие HTTP-заголовки будут использоваться при выполнении фактического запроса.
Access-Control-Request-Method-
Используется при отправке предварительного запроса, чтобы сообщить серверу, какой HTTP-метод будет использован при выполнении фактического запроса.
Origin-
Указывает, откуда исходит запрос.
Timing-Allow-Origin-
Указывает источники, которым разрешено видеть значения атрибутов, полученных через функции API отслеживания ресурсов API отслеживания ресурсов, которые в противном случае отображались бы как ноль из-за ограничений между источниками.
Загрузки
Content-Disposition-
Указывает, должен ли передаваемый ресурс отображаться внутри (по умолчанию без заголовка) или обрабатываться как загрузка, и браузер должен отобразить диалог «Сохранить как».
Информация о теле сообщения
Content-Length-
Размер ресурса в десятичном числе байтов.
Content-Type-
Указывает тип носителя ресурса.
Content-Encoding-
Используется для указания алгоритма сжатия.
Content-Language-
Описывает язык(и), предназначенный для аудитории, что позволяет пользователю дифференцировать в соответствии с предпочитаемым языком.
Content-Location-
Указывает альтернативное местоположение возвращаемых данных.
Прокси
Forwarded-
Содержит информацию со стороны клиента прокси-серверов, которая изменяется или теряется, когда прокси участвует в пути запроса.
-
X-Forwarded-ForНестандартный -
Идентифицирует исходные IP-адреса клиента, подключающегося к веб-серверу через HTTP-прокси или балансировщик нагрузки.
-
X-Forwarded-HostНестандартный -
Идентифицирует исходный хост, который клиент использовал для подключения к вашему прокси или балансировщику нагрузки.
-
X-Forwarded-ProtoНестандартный -
Идентифицирует протокол (HTTP или HTTPS), который клиент использовал для подключения к вашему прокси или балансировщику нагрузки.
Via-
Добавляется прокси, как прямым, так и обратным, и может появляться в заголовках запроса и в заголовках ответа.
Перенаправления
Location-
Указывает URL для перенаправления страницы.
Контекст запроса
From-
Содержит адрес электронной почты в Интернете для пользователя, который контролирует запрашиваемого пользователя агента.
Host-
Указывает доменное имя сервера (для виртуального хостинга) и (необязательно) номер TCP-порта, на котором сервер прослушивает.
Referer-
Адрес предыдущей веб-страницы, с которой была пройдена ссылка на текущую запрашиваемую страницу.
Referrer-Policy-
Управляет тем, какая информация о ссылке, отправленная в заголовке
Referer, должна быть включена в запросы. User-Agent-
Содержит характерную строку, которая позволяет узлам сетевого протокола идентифицировать тип приложения, операционную систему, поставщика программного обеспечения или версию программного обеспечения запрашивающего программного агента. См. также справочник по строке агента пользователя Firefox.
Контекст ответа
Запросы диапазона
Accept-Ranges-
Указывает, поддерживает ли сервер запросы диапазона, и если да, то в каких единицах может быть выражен диапазон.
Range-
Указывает часть документа, которую должен вернуть сервер.
If-Range-
Создает условный запрос диапазона, который выполняется только в том случае, если заданный тег или дата соответствуют удаленному ресурсу. Используется для предотвращения загрузки двух диапазонов от несовместимых версий ресурса.
Content-Range-
Указывает, где в полном теле сообщения находится частичное сообщение.
Безопасность
-
Cross-Origin-Embedder-Policy(COEP) -
Разрешает серверу объявлять политику встраивания для данного документа.
-
Cross-Origin-Opener-Policy(COOP) -
Запрещает другим доменам открывать/управлять окном.
-
Cross-Origin-Resource-Policy(CORP) -
Запрещает другим доменам считывать ответ ресурсов, к которым применяется этот заголовок.
-
Content-Security-Policy(CSP) -
Управляет ресурсами, которые пользовательский агент разрешается загружать для данной страницы.
Content-Security-Policy-Report-Only-
Позволяет веб-разработчикам экспериментировать с политиками, отслеживая, но не применяя, их эффекты. Эти отчеты о нарушениях состоят из документов JSON, отправляемых по HTTP
POSTзапросу в указанный URI. Expect-CT-
Разрешает сайтам включать отчетность и/или применение требований к прозрачности сертификатов, что предотвращает использование ошибочно выпущенных сертификатов для данного сайта, остающихся незамеченными. Когда сайт включает заголовок Expect-CT, он запрашивает, чтобы Chrome проверял, появляется ли любой сертификат для этого сайта в общедоступных журналах CT.
Feature-Policy-
Предоставляет механизм для разрешения и запрещения использования функций браузера в собственном фрейме и во фреймах, которые он встраивает.
-
Origin-IsolationЭкспериментальный -
Предоставляет механизм для изоляции происхождения веб-приложений.
-
Strict-Transport-Security(HSTS) -
Принудительно использовать HTTPS вместо HTTP.
Upgrade-Insecure-Requests-
Отправляет сигнал серверу, выражая предпочтение клиента к зашифрованному и аутентифицированному ответу и возможности успешно обрабатывать директиву
upgrade-insecure-requests. X-Content-Type-Options-
Отключает распознавание MIME и заставляет браузер использовать тип, указанный в
Content-Type. X-Download-Options-
Заголовок HTTP
X-Download-Optionsуказывает браузеру (Internet Explorer), что он не должен отображать опцию "Открыть" для файла, загруженного из приложения, чтобы предотвратить фишинг-атаки, так как в противном случае файл получит доступ к выполнению в контексте приложения. -
X-Frame-Options(XFO) -
Указывает, разрешено ли браузеру отображать страницу во фрейме
<frame>,<iframe>,<embed>или<object>. X-Permitted-Cross-Domain-Policies-
Указывает, разрешен ли файл политики междоменных запросов (
crossdomain.xml). Файл может определить политику, позволяющую клиентам, таким как Adobe Flash Player (теперь устарел), Adobe Acrobat, Microsoft Silverlight (теперь устарел) или Apache Flex, разрешение на обработку данных через домены, которые в противном случае были бы ограничены из-за Политики одного происхождения. Для получения дополнительной информации см. Спецификацию файла политики междоменных запросов. X-Powered-By-
Может устанавливаться средами размещения или другими фреймворками и содержит информацию о них, не предоставляя никакой полезности для приложения или его посетителей. Снимите этот заголовок, чтобы избежать раскрытия потенциальных уязвимостей.
X-XSS-Protection-
Включает фильтрацию межсайтовых сценариев.
Заголовки метаданных запросов Fetch
Заголовки метаданных запросов Fetch предоставляют информацию о контексте, из которого произошел запрос. Это позволяет серверу принимать решения о том, следует ли разрешать запрос, исходя из того, откуда он пришёл и как будет использован ресурс.
Sec-Fetch-Site-
Это заголовок запроса, который указывает на отношение между происхождением инициатора запроса и происхождением целевого ресурса. Это структурированный заголовок, значение которого — маркер с возможными значениями
cross-site,same-origin,same-site, иnone. Sec-Fetch-Mode-
Это заголовок запроса, который указывает режим запроса для сервера. Это структурированный заголовок, значение которого — маркер с возможными значениями
cors,navigate,no-cors,same-origin, иwebsocket. Sec-Fetch-User-
Это заголовок запроса, который указывает, был ли запрос навигации вызван пользователем. Это структурированный заголовок, значение которого — логическое значение, поэтому возможные значения —
?0для ложного и?1для истинного. Sec-Fetch-Dest-
Это заголовок запроса, который указывает конечную точку запроса для сервера. Это структурированный заголовок, значение которого — маркер с возможными значениями
audio,audioworklet,document,embed,empty,font,image,manifest,object,paintworklet,report,script,serviceworker,sharedworker,style,track,video,worker, иxslt. -
Заголовок запроса, отправляемый в предварительном запросе к
fetch()ресурса во время запуска сервисного работника. Значение, устанавливаемое с помощьюNavigationPreloadManager.setHeaderValue(), может использоваться для информирования сервера о том, что должен быть возвращен другой ресурс, чем при обычномfetch()действии.
События, отправляемые сервером
Last-Event-ID-
В процессе определения
-
NELЭкспериментальный -
Определяет механизм, который позволяет разработчикам объявлять политику отчётности об ошибках сети.
Ping-From-
В процессе определения
Ping-To-
В процессе определения
Report-To-
Используется для указания конечной точки сервера, в которую браузер отправляет сообщения об ошибках и предупреждениях.
Кодирование передачи
Transfer-Encoding-
Указывает форму кодирования, используемую для безопасной передачи ресурса пользователю.
TE-
Указывает кодирования передачи, которые пользовательский агент готов принять.
Trailer-
Разрешает отправителю включать дополнительные поля в конце фрагментированного сообщения.
Вебсокеты
Sec-WebSocket-Key-
В процессе определения
Sec-WebSocket-Extensions-
В процессе определения
Sec-WebSocket-Accept-
В процессе определения
Sec-WebSocket-Protocol-
В процессе определения
Sec-WebSocket-Version-
В процессе определения
Другие
-
Accept-Push-PolicyЭкспериментальный -
Клиент может указать желаемую политику push для запроса, отправив заголовок
Accept-Push-Policyв запросе. -
Accept-SignatureЭкспериментальный -
Клиент может отправить заголовок
Accept-Signatureдля указания намерения использовать доступные подписи и указать типы поддерживаемых подписей. Alt-Svc-
Используется для перечисления альтернативных способов связи с данной службой.
Date-
Содержит дату и время создания сообщения.
-
Early-DataЭкспериментальный -
Указывает, что запрос был передан в ранних данных TLS.
-
Large-AllocationУстаревший -
Сообщает браузеру, что загружаемая страница будет выполнять большое выделение памяти.
Link-
Заголовок-атрибут сущности
Linkпредоставляет способ сериализации одного или нескольких ссылок в заголовках HTTP. Он семантически эквивалентен элементу HTML<link>. -
Push-PolicyЭкспериментальный -
Push-Policyопределяет поведение сервера относительно push при обработке запроса. Retry-After-
Указывает, как долго пользовательскому агенту следует ждать перед отправкой повторного запроса.
-
SignatureЭкспериментальный -
Заголовок
Signatureпередает список подписей для обмена, каждая с информацией о том, как определить подлинность и обновить эту подпись. -
Signed-HeadersЭкспериментальный -
Заголовок
Signed-Headersидентифицирует упорядоченный список заголовков ответа, которые необходимо включить в подпись. Server-Timing-
Передает одну или несколько метрик и описаний для данного цикла запрос-ответ.
Service-Worker-Allowed-
Используется для удаления ограничения по пути, включив этот заголовок в ответе скрипта Service Worker.
SourceMap-
Связывает сгенерированный код с картой исходных кодов.
Upgrade-
Соответствующий документ RFC для заголовка Upgrade — RFC 9110, раздел 7.8. Стандарт устанавливает правила для обновления или изменения протокола на текущем подключении клиента, сервера и транспортного протокола. Например, данный заголовок позволяет клиенту перейти с HTTP 1.1 на WebSocket, предполагая, что сервер принимает и реализует заголовок Upgrade. Ни одна сторона не обязана принимать условия, указанные в заголовке Upgrade. Он может использоваться как в заголовках клиента, так и сервера. Если указан заголовок Upgrade, отправитель ОБЯЗАН также отправить заголовок Connection с указанным параметром upgrade. Подробнее о заголовке Connection см. раздел 7.6.1 указанного RFC.
X-DNS-Prefetch-Control-
Управляет предварительной загрузкой DNS — функцией, с помощью которой браузеры выполняют предварительный поиск доменных имён как по ссылкам, которые пользователь может выбрать для перехода, так и по URL-адресам элементов, на которые ссылается документ, включая изображения, CSS, JavaScript и так далее.
-
X-Firefox-SpdyУстаревший Нестандартный -
Ожидается уточнение
-
X-PingbackНестандартный -
Ожидается уточнение
X-Requested-With-
Ожидается уточнение
-
X-Robots-TagНестандартный -
Заголовок HTTP
X-Robots-Tagиспользуется для указания того, как веб-страница должна индексироваться в результатах общедоступных поисковых систем. Заголовок фактически эквивалентен<meta name="robots" content="…">. -
X-UA-CompatibleНестандартный -
Используется Internet Explorer для указания режима документа, который следует использовать.
Содействие
Вы можете помочь, создавая новые записи или улучшая существующие.
См. также
© 2005–2022 MDN contributors.
Licensed under the Creative Commons Attribution-ShareAlike License v2.5 or later.
https://developer.mozilla.org/en-US/docs/Web/HTTP/Headers