У меня есть клиент, который будет публиковать большие файлы JSON на сервере API. Поскольку файлы настолько сжимаемы, я бы хотел сжать их и отправить сжатые данные.
Что я хотел бы знать: каков наилучший способ сообщить о своем намерении серверу?
По сути, я хочу использовать обратное значение Accept-encoding
, чтобы сервер обрабатывал данные только как сжатые для транспортных целей и автоматически распаковывал данные перед их интерпретацией в соответствии с Content-Type
.
Это означает, что я не могу установить для поля Content-Type
значение application/gzip
, поскольку оно должно быть application/json
, чтобы сервер мог понять, что такое истинная кодировка несжатых данных.
Content-Transfer-Encoding
выглядит так, как будто бы он служил моим целям, но был построен с учетом электронной почты и поддерживает только 7bit
, quoted-printable
, base64
, 8bit
и binary
.
Существует ли прозрачное сжатие / декомпрессия для HTTP-транспорта от клиента к серверу? А если нет, каковы наилучшие методы для достижения того, чего я пытаюсь достичь?