Поддерживаются ли расширения фрагментов HTTP / 2, и если да, то как? - PullRequest
0 голосов
/ 18 июня 2020

RF C 7230 §4.1 определены «расширения фрагментов», дополнительные пары ключ-значение, которые могут быть отправлены вместе с фрагментом в HTTP-сообщении, закодированном с помощью Transfer-Encoding: chunked:

Кодирование по фрагментам позволяет каждому фрагменту включать в себя ноль или более расширений фрагментов сразу после размера фрагмента для предоставления метаданных фрагмента (например, подписи или ha sh), управляющей информации в середине сообщения , или рандомизация размера тела сообщения.

HTTP / 2 утверждает,

HTTP / 2 предназначен для максимальной совместимости с текущими использование HTTP. Это означает, что с точки зрения приложения функции протокола в основном не изменились. Для этого вся семантика запросов и ответов сохраняется, хотя синтаксис передачи этой семантики изменился.

В HTTP / 2 кадры DATA используются для передачи данных порциями, вместо chunked Transfer-Encoding:

HTTP / 2 использует кадры DATA для передачи полезных данных сообщения. Кодирование передачи "по частям", определенное в разделе 4.1 [RFC7230], НЕ ДОЛЖНО использоваться в HTTP / 2.

, но, AFAICT, кадры DATA не поддерживают расширения фрагментов, только необязательные заполнение.

В частности, как прокси HTTP / 1.1 - HTTP / 2 получает запрос, содержащий фрагменты с правильно сформированными расширениями фрагментов, которые должны преобразовывать эти фрагменты в HTTP / 2?

Ответы [ 2 ]

0 голосов
/ 18 июня 2020

In https://greenbytes.de/tech/webdav/rfc7540.html#rfc .section.8.1.p.4 :

HTTP / 2 использует кадры DATA для передачи полезной нагрузки сообщения. Кодирование передачи по фрагментам, определенное в разделе 4.1 [RFC7230], НЕ ДОЛЖНО использоваться в HTTP / 2.

0 голосов
/ 18 июня 2020

В HTTP / 2 кадры DATA используются для передачи данных фрагментами вместо кодирования передачи по фрагментам.

Проще говоря, каждый кадр DATA является фрагментом. Нет необходимости использовать кодирование по фрагментам HTTP / 1.1, поскольку кадры данных HTTP / 2 предоставляют тот же набор функций.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...