Accept-Charset
Заголовок Accept-Charset
запроса HTTP сообщает какую кодировку клиент может понять. Используя согласование контента, сервер выбирает один из предложенных вариантов, использует его и информирует клиент о своём выборе в Content-Type
ответном заголовке. Браузер обычно не устанавливает этот заголовок, т.к. значение по умолчанию для каждого контентного типа обычно корректный и передача его позволит с большей лёгкостью получить цифровой отпечаток.
Если сервер не может обслужить никакую из предоставленных кодировок, теоретически он может вернуть 406
(Not Acceptable) код ошибки. Но, для более лучшего пользовательского опыта, это редко делается и более частый способ в этом случае, это просто игнорирование заголовка Accept-Charset
.
Примечание:
В более ранних версиях HTTP/1.1, кодировка по умолчанию (ISO-8859-1
) была определена. Теперь это не так и каждый контентый тип может иметь своё собственное дефолтное значение.
Тип заголовка | Request header |
---|---|
Forbidden header name | Да |
Синтаксис
Accept-Charset: <кодировка> // Множественные типы, придающие вес с quality value синтаксисом: Accept-Charset: utf-8, iso-8859-1;q=0.5
Директивы
<charset>
-
Кодировка типа
utf-8
илиiso-8859-15.
*
-
Любая кодировка не указанная нигде в заголовке;
'*'
используется как групповой символ. ;q=
(q-factor weighting)-
Любое значение помещается в порядке предпочтения, выраженного с использованием относительного значения качества, называемого весом.
Примеры
Accept-Charset: iso-8859-1 Accept-Charset: utf-8, iso-8859-1;q=0.5 Accept-Charset: utf-8, iso-8859-1;q=0.5, *;q=0.1
Смотрите также
- HTTP content negotiation
- Header with the result of the content negotiation:
Content-Type
- Other similar headers:
TE
,Accept-Encoding
,Accept-Language
,Accept