Я использую бесплатную версию Soap UI для некоторого покоя.SOAP UI - сохранить HTTP-запрос в файл GZIP
Мне нужно сохранить мой HTTP-запрос POST (запрос уже сжатый gzip) в файл gzip.
Я пробовал разные способы сделать это, однако после выполнения кода, когда я пытаюсь вручную распаковать файл, у меня есть следующая ошибка: «Архив находится в неизвестном формате или поврежден».
запрос HTTP POST имеет следующий заголовок:
Host : 127.0.0.1:8091
Content-Length : 636
User-Agent : Java/1.7.0_07
Connection : keep-alive
Content-Type : application/octet-stream
Accept : text/plain, application/json, application/*+json, */*
Pragma : no-cache
Cache-Control : no-cache
Ниже решения, которые я пробовал:
Решение # 1:
byte[] buffer = new byte[1024];
byte[] data = mockRequest.getRequestContent().getBytes();
def path="myfile.gz";
BufferedOutputStream bos = new BufferedOutputStream(new FileOutputStream(path));
bos.write(data);
bos.flush();
bos.close();
Решение # 2
byte[] buffer = new byte[1024];
byte[] data = mockRequest.getRawRequestData();
def path="myfile.gz";
BufferedOutputStream bos = new BufferedOutputStream(new FileOutputStream(path));
bos.write(data);
bos.flush();
bos.close();
Может кто-нибудь e, пожалуйста, помогите и сообщите мне, почему я не могу распаковать файл gzip и как я могу это сделать?
Спасибо,
Вы подтвердили данные в getRawRequestData() на самом деле gzip-контент? Если нет, попробуйте использовать завиток, чтобы убедиться в этом. См. Http://stackoverflow.com/questions/19538104/save-response-body-to-file-from-curl-request –
Привет, если я изменил тип содержимого в HTTP-сообщении на запрос «gzip», я могу видеть сообщение. Однако я не могу изменить тип содержимого, мне нужно найти решение с типом контента = application/octet-stream. –