Разница между многочастным и проторенным протоком - программирование

Разница между многочастным и проторенным протоком

Могут ли некоторые эксперты объяснить различия между ними? это правда, что chunked является потоковым протоколом, а multipart - нет? в чем преимущество использования multipart?

спасибо.

4b9b3361

Ответ 1

Более интуитивно,

Chunking - это способ отправить одно сообщение с сервера на клиент, где серверу не нужно ждать, пока весь ответ будет сгенерирован, но может отправлять куски (куски) по мере их поступления. Теперь это происходит на уровне передачи данных и не обращает внимания на клиента. Соответственно это тип "Передача-кодирование".

В то время как многочастность происходит на уровне приложения и интерпретируется на уровне логики приложения. Здесь сервер сообщает клиенту, что контент, даже если это один орган ответа, имеет разные логические части и может быть проанализирован соответствующим образом. Опять же, это настройка в "Content-Type", поскольку клиенты должны это знать.

Учитывая, что передача может быть разделена независимо от типов содержимого, при необходимости может быть передано многочастное HTTP-сообщение с использованием закодированного кодирования сервером.

Ответ 2

Также нет протокола. Протокол HTTP - это протокол. Фактически, P в HTTP означает протокол.

Вы можете прочитать больше на chunked и multipart в разделе Hypertext Transfer Protocol 1.1

Chunked - это кодирование передачи, указанное в разделе 3.6 "Передача кодов".

Мультипарт - это тип носителя, который содержится в разделе 3.7.2. Многостраничный тип - это подраздел 3.7 Media Types.

Chunked также влияет на другие аспекты протокола, такие как длина содержимого, как указано в разделе 4.4, поскольку chunked должен использоваться, когда длина сообщения не может быть предопределена (главным образом, при доставке динамического содержимого).

От 14.41 (поле заголовка передачи-кодирования)

Поле общего заголовка Transfer-Encoding указывает, что (если есть) тип преобразования был применен к телу сообщения в порядке чтобы безопасно передать его между отправителем и получателем. Эта отличается от кодирования контента тем, что кодирование передачи является свойство сообщения, а не объекта.

Проще говоря, chunking - это то, как вы передаете блок данных, а multipart - это форма данных.