Рейтинг:0

Возврат сжатых данных, когда клиент пропускает заголовок accept-encoding

флаг us

в Стандарт HTTP 1.1, в нем говорится, что «если в запросе нет поля Accept-Encoding, любое кодирование содержимого считается приемлемым для пользовательского агента».

Это означает, что сервер может, например, вернуть тело ответа в кодировке gzip, если поле accept-encoding опущено.

Однако на практике кажется, что наиболее часто используемые серверы (например, Apache, nginx) не будут этого делать и отправят несжатый ответ, если поле опущено.

Справедливо ли сказать, что более разговорное поведение заключается в использовании только тех кодировок, которые явно предложены клиентом? Это кажется более логичным — если клиент предоставляет список кодировок, которые он может обрабатывать, — несмотря на то, что это противоречит стандарту.

Рейтинг:0
флаг cn

Никакое кодирование не считается приемлемым, даже если нет Принять кодировку заголовки есть. Не имея каких-либо других указаний, не беспокоясь о сжатии, является распространенным выбором. Сохраняет работу, явно разрешенную спецификацией.

Если представление не имеет кодирования содержимого, то оно приемлемо по умолчанию, если специально не исключено полем Accept-Encoding указание либо «identity; q = 0», либо «*; q = 0» без более конкретной записи для «идентичности».

Или, когда не предусмотрено Принять кодировку реализация может выбрать все, что захочет, с помощью некоторого алгоритма. Пропуск согласования содержимого сопряжен с небольшим риском того, что клиент не будет знать, что делать с кодировкой. Лично я хотел бы Кодировка содержимого: zstd но по состоянию на 2022 год это не распространено в пользовательских агентах.

флаг us
Это то, что я имею в виду, вы говорите «может выбрать все, что захочет», что говорит стандарт, но по этой логике сервер вполне может выбрать что-то, что не поддерживается клиентом, что глупо. Из этого следует, что более логичным будет использовать только ту кодировку, которая явно запрошена клиентом?

Ответить или комментировать

Большинство людей не понимают, что склонность к познанию нового открывает путь к обучению и улучшает межличностные связи. В исследованиях Элисон, например, хотя люди могли точно вспомнить, сколько вопросов было задано в их разговорах, они не чувствовали интуитивно связи между вопросами и симпатиями. В четырех исследованиях, в которых участники сами участвовали в разговорах или читали стенограммы чужих разговоров, люди, как правило, не осознавали, что задаваемый вопрос повлияет — или повлиял — на уровень дружбы между собеседниками.