19.4.6. Введение Transfer-Encoding
HTTP/1.1 представляет поле заголовка Transfer-Encoding (раздел 14.40). Прокси/шлюзы ДОЛЖНЫ удалить любое кодирование передачи до пересылки сообщения через совместимый MIME протокол.
Процесс для того, чтобы декодировать кодирование передачи "chunked" (раздел 3.6) может быть представлен в псевдокоде как:
length := 0
read chunk-size, chunk-ext (if any) and CRLF
while (chunk-size > 0) {
read chunk-data and CRLF
append chunk-data to entity-body
length := length + chunk-size
read chunk-size and CRLF
}
read entity-header
while (entity-header not empty) {
append entity-header to existing header fields
read entity-header
}
Content-Length := length
Remove "chunked" from Transfer-Encoding
19.4.7. Версия MIME
HTTP не совместимый MIME протокол (см. приложение 19.4). Однако, HTTP/1.1 сообщения может включить отдельное общее поле заголовка MIME-Version, чтобы указать, какая версия протокола MIME использовалась, чтобы создать сообщение. Использование поля заголовка MIME-Version указывает, что сообщение находится в полном согласии с протоколом MIME.
Прокси/шлюзы должны гарантировать полное согласие (где только возможно), экспортируя сообщения HTTP в строгие среды MIME.
MIME-Version = "MIME-Version" ":" 1*DIGIT "." 1*DIGIT
Версия MIME "1.0" является значением по умолчанию для использования в HTTP/1.1. Однако, HTTP/1.1 парсинг сообщения и семантика определен в соответствии с этим документом а не спецификацией MIME.