Я начинаю с ответом от запроса HTTP:Как я могу gzip InputStream и возвращать InputStream?
InputStream responseInputStream = response.getEntityInputStream()
Мне нужно GZIP этот ответ, поэтому я могу загрузить его на s3 и сохранить его прессует:
this.s3.putObject(new PutObjectRequest(bucketName, key, gzippedResponseInputStream, meta));
Я знаю, что я может получить массив byte[]
из responseInputStream
, а затем gzip их в новый InputStream
. Однако это может быть очень неэффективным с большим объемом данных.
Я знаю, что были заданы одинаковые вопросы по SO, но я не нашел ничего, что, по-видимому, касалось конкретной необходимости запуска с InputStream
и заканчивая gzipped InputStream
.
Спасибо за помощь!
Вы проверили этот ответ? http://stackoverflow.com/a/19326492/2588800 –
Вау, спасибо @SvetlinZarev - это сработало! Я искал SO, пытаясь найти каждое «решение», которое я нашел, и ничто из этого не сработало до сих пор, но ваше предложение сделало трюк! Спасибо! – chaimp