Проектирование Интернет приложений. Тузовский А.Ф. - 22 стр.

UptoLike

Составители: 

22
Для описания типа содержания HTTP использует систему кодиро-
вания, использованную в электронной почте. Система кодирования ти-
пов содержания MIME (Multipurpose Internet Mail Extensions) это стан-
дарт, разработанный для того, чтобы помочь почтовым клиентам пока-
зать не текстовое содержание, прикрепленных к электронным письмам
данных.
Типы данных, содержащихся в теле HTTP сообщений, описывают-
ся двухуровневой упорядоченной моделью кодирования, с помощью за-
головков:
Content-Encoding описывает способ кодирования (сжатия) содер-
жания тела сообщения;
Content-Type описывает MIME тип содержания тела сообщения.
Для использования содержания тела сообщения оно вначале долж-
но быть декодировано, в соответствии с методом кодирования заданным
в заголовке Content-Encoding, а затем показано в соответствии с типом,
заданным в заголовке Content-Type. В HTTP/1.1 заголовки Content-
Encoding могут использовать следующие значения:
gzip содержание закодировано с помощью программы сжатия
данных GNU zip (по умолчанию);
compress содержание закодировано с помощью программы сжа-
тия данных compress, используемой в ОС Unix;
deflate содержание закодировано в формате zlib, описанном в Ин-
тернет стандартах RFC 1950 и 1951.
Очевидно, что если web серверы кодируют (сжимают) содержание
с помощью таких методов кодирования, то web браузеры (и другие кли-
енты) должны уметь выполнять декодирование тела сообщения до того,
как выполнять его визуализацию и обработку.
Например, когда web-сервер включает в ответ заголовок Content-
Encoding: gzip, то браузер знает, как его декодировать, перед тем, как по-
казать пользователю. Например, браузер является достаточно способ-
ным, чтобы распаковать сжатый файл с документом Microsoft Word (на-
пример, test.doc.gz), а затем автоматически вызвать программу Microsoft
Word, чтобы показать пользователю исходный файл test.doc.
Заголовку Content-Type задается код типа содержания (media type),
которое определяется в виде комбинации типа, подтипа и пар «атрибут-
значения»:
тип "/" подтип [";" строка-параметров ]