RFC: 2068
Оригинал: Hypertext Transfer Protocol - HTTP/1.1
Другие версии: RFC 2616
Категория: Предложенный стандарт
Дата публикации:
Авторы: , , , ,
Перевод: Алексей Симонов

14.4. Accept-Language

Поле заголовка запроса Accept-Language похоже на Accept, но ограничивает набор естественных языков, которые предпочтены как ответ на запрос.

Accept-Language = "Accept-Language" ":"
                  1#( language-range [ ";" "q" "=" qvalue ] )

language-range  = ( ( 1*8ALPHA *( "-" 1*8ALPHA ) ) | "*" )

Каждому language-range МОЖНО дать связанное качественное значение, которое представляет оценку предпочтения пользователя языкам, определенным тем диапазоном. Качественные значения по умолчанию значения к "q=1". Например,

Accept-Language: da, en-gb;q=0.8, en;q=0.7

означал бы: "я предпочитаю датский язык, но приму британский вариант английского языка и другие типы английского языка." language-range соответствует language-tag, если он точно равняется тэгу, или если он точно равняется префиксу тэга таким образом, что первый символ тэга после префикса "-".

Специальный диапазон "*", если представлено в поле Accept-Language, соответствует каждому тэгу, которому не соответствует любой другой диапазон, существующий в поле Accept-Language.

Обратите внимание: Это использование префикса, соответствующего правилу, не подразумевает, что языковые тэгы назначены языкам таким способом, которым он всегда истинен что, если пользователь поймет язык с определенным тэгом, то этот пользователь также поймет все языки с тэгами, для которых этот тэг — префикс. Префиксное правило просто позволяет использование префиксных тэгов если дело обстоит так.

Языковой коэффициент качества, назначенный language-tag полем Accept-Language, является качественным значением самого длинного languagerange в поле, которое соответствует language-tag. Если никакой languagerange в поле не соответствует тэгу, языковой назначенный коэффициент качества 0. Если номер заголовка Accept-Language присутствует в запросе, сервер ДОЛЖЕН предположить, что все языки являются одинаково приемлемыми. Если заголовок Accept-Language присутствует, то все языки, которые назначены качественный коэффициент, больше чем 0, являются приемлемыми.

Он может противоречить ожиданиям частной жизни пользователя отправить заголовок Accept-Language с полными лингвистическими персональными настройками пользователя в каждом запросе. Для обсуждения этого выпуска, см. раздел 15.7.

Обратите внимание: Поскольку ясность очень зависит от индивидуального пользователя, рекомендуется, чтобы клиентские приложения сделали вариант лингвистического предпочтения доступным пользователю. Если вариант не сделан доступным, то поле заголовка Accept-Language не должно быть дано в запросе.

14.5. Accept-Ranges

Поле заголовка ответа Accept-Ranges позволяет серверу указывать свое принятие запросов диапазона на ресурс:

Accept-Ranges     = "Accept-Ranges" ":" acceptable-ranges

acceptable-ranges = 1#range-unit | "none"

Серверы происхождения, которые принимают запросы диапазона байта, МОГУТ отправить

Accept-Ranges: bytes

но не будьте обязаными делать так. Клиенты МОГУТ генерировать запросы диапазона байта не получая этот заголовок для вовлеченного ресурса.

Серверы, которые не принимают вида запроса диапазона на ресурс, МОГУТ отправить

Accept-Ranges: none

советовать клиенту не делать попытку запроса диапазона.

2007 - 2017 © Русские переводы RFC, IETF, ISOC.