Работа с составными (multipart) HTTP-сообщениями

В данном примере мы создадим HTTP-сервис, который будет в ответ на запрос от клиента выдавать текстовое сообщение с вложенными картинками. Затем на клиенте мы отобразим полученный ответ.

Заголовок ответа сервиса Content-Type должен содержать значение "multipart/form-data". Первое слово "multipart" указывает на то, что HTTP-сообщение является составным, т. е. содержит внутри себя несколько вложенных сообщений. Второе слово – "form-data" указывает на конкретный стандарт составных сообщений, который часто используется для кодирования почтовых сообщений.

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

В случае стандарта "multipart/form-data" каждое вложенное сообщение, в свою очередь, должно содержать заголовок Content-Disposition со значением "form-data" и атрибутом "name", который позволяет идентифицировать сообщения.