Ответ 1
Согласно RFC 1341 (устарел RFC 2045):
Поле заголовка Content-Transfer-Encoding, которое можно использовать для укажите вспомогательную кодировку, которая была применена к данным, чтобы разрешить ему проходить через механизмы транспорта почты, которые могут иметь данных или ограничений набора символов.
и позже:
Многие типы контента, которые могут быть полезны для транспортировки по электронной почте представлены в их "естественном" формате в виде 8-битного символа или двоичные данные. Такие данные не могут передаваться по некоторым транспортным средствам протоколы. Например, RFC 821 ограничивает почтовые сообщения 7-битными Данные US-ASCII с 1000 символами.
Поэтому необходимо определить стандартный механизм для перекодирование таких данных в 7-битный короткий формат. (...) Поле Content-Transfer-Encoding используется для указания типа преобразование, которое использовалось для представления тела приемлемым образом для транспорта.
Поскольку у вас есть веб-сервис, который не имеет ничего общего с электронной почтой, вы не должны использовать этот заголовок.
Вы можете использовать заголовок Content-Encoding
, который указывает, что перенесенные данные были сжаты (значение gzip).
Я думаю, что в вашем случае
Content-Type: application/pdf
. Кроме того, вы можете установить заголовок Content-Length
, но, на мой взгляд, если вы строите webservice (это не сервер http/proxy server), то Content-Type
достаточно. Пожалуйста, имейте в виду, что некоторые конкретные заголовки (например, Transfer-Encoding
), если они не используются надлежащим образом, могут вызвать непредвиденные проблемы связи, поэтому, если вы не на 100% уверены в использовании какого-либо заголовка - если вам это действительно нужно или просто - t использовать его.