Заголовки: Accept
Заголовок Accept
Базовая поддержка Широко доступно
Эта функция хорошо зарекомендовала себя и работает на многих устройствах и во многих версиях браузеров. Она доступна во всех браузерах с июля 2015 года.
Заголовок HTTP Accept запроса и ответа указывает, какие типы содержимого, выраженные в виде типов MIME, отправитель может обработать. В запросах сервер использует согласование содержимого, чтобы выбрать одно из предложений, и сообщает клиенту о выборе с помощью заголовка ответа Content-Type. В ответах он сообщает, какие типы содержимого сервер может обрабатывать в сообщениях для запрошенного ресурса, чтобы этот тип содержимого можно было использовать в последующих запросах к ресурсу.
Браузеры устанавливают обязательные значения этого заголовка в зависимости от контекста запроса. Например, при получении таблицы стилей CSS, изображения, видео или скрипта браузер использует разные значения.
* Значения не могут содержать байты заголовка запроса, небезопасные для CORS, включая "():<>?@[\]{},, Delete 0x7F и управляющие символы 0x00–0x19, за исключением Tab 0x09.
Синтаксис
Accept: <media-type>/<MIME_subtype> Accept: <media-type>/* Accept: */* // Multiple types, weighted with the quality value syntax Accept: text/html, application/xhtml+xml, application/xml;q=0.9, image/webp, */*;q=0.8
Директивы
<media-type>/<subtype>-
Один точный тип мультимедиа, например
text/html. <media-type>/*-
Тип мультимедиа без подтипа. Например,
image/*соответствуетimage/png,image/svg,image/gifи другим типам изображений. */*-
Любой тип мультимедиа.
;q=(весовой коэффициент q)-
Значение, определяющее порядок предпочтения с помощью относительного значения качества, называемого весом.
Примеры
>Использование заголовков Accept запроса по умолчанию
В HTTP-запросах, отправляемых с помощью инструментов командной строки, таких как curl и wget, в качестве значения Accept по умолчанию используется */*:
GET / HTTP/1.1 Host: example.com User-Agent: curl/8.7.1 Accept: */*
При переходе по ссылке в браузере обычно используется следующее значение заголовка запроса Accept:
GET /en-US/ HTTP/2 Host: developer.mozilla.org Accept: text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8 …
После получения документа значения Accept по умолчанию в запросах изображений на странице примера developer.mozilla.org выглядят так:
Accept: image/avif,image/webp,image/png,image/svg+xml,image/*;q=0.8,*/*;q=0.5
Настройка заголовков Accept запроса для ответов JSON
Системы, взаимодействующие с API, обычно запрашивают ответы application/json. Ниже приведён пример запроса GET, в котором клиент явно запрашивает ответ JSON:
GET /users/123 HTTP/1.1 Host: example.com Authorization: Bearer abcd123 Accept: application/json
Спецификации
| Спецификация |
|---|
| Семантика HTTP> # field.accept> |
Совместимость с браузерами
| Компьютеры | Мобильные устройства | |||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|
| Chrome | Edge | Firefox | Opera | Safari | Chrome Android | Firefox для Android | Opera Android | Safari на iOS | Samsung Internet | WebView Android | WebView на iOS | |
Accept |
1 | 12 | 1В Firefox 66 значение заголовкаAccept по умолчанию изменилось на */*. |
15 | 1 | 18 | 4В Firefox для Android 66 значение заголовкаAccept по умолчанию изменилось на */*. |
14 | 1 | 1.0 | 4.4 | 1 |
См. также
- Согласование содержимого в HTTP
- Список значений Accept по умолчанию
- Ограничения для заголовков запросов из списка безопасных для CORS
- Заголовок с результатом согласования содержимого:
Content-Type - Другие похожие заголовки:
TE,Accept-Encoding,Accept-Language
© 2005–2025 MDN contributors.
Licensed under the Creative Commons Attribution-ShareAlike License v2.5 or later.
https://developer.mozilla.org/en-US/docs/Web/HTTP/Reference/Headers/Accept