2016-10-26 3 views
0

Я строю клиент Джерси 2, который вызывает службу для получения файла с сервера.Джерси 2 Клиент REST - Read Multipart Response/OctetStream Response

Служба возвращает содержимое двоичного файла в качестве приложения/октет-поток

ТЕПЕРЬ, это мой код, где я называть WebService

Response response = target.request().header(HttpHeaders.COOKIE, this.cookie) 
        .header(HttpHeaders.CONTENT_TYPE, MediaType.APPLICATION_OCTET_STREAM)  
        .accept(MediaType.APPLICATION_OCTET_STREAM).get(); 

Я получаю HTTP 200 ответа. Но я не понимаю, как я могу получить содержимое файла из ответа.

EDIT Документация Сервис говорит: «Чтобы получить содержимое двоичного файла и метаданные, использование заголовка Accept: multipiart/смешанная»

Итак, я попытался ниже

 Response response = target.request() 
          .header(HttpHeaders.COOKIE, this.cookie) 
          .header(HttpHeaders.CONTENT_TYPE, "multipart/mixed") 
          .accept("multipart/mixed").get(); 

Даже здесь , Я получаю ответ HTTP-статуса HTTP. Но как читать содержимое файла?

Пожалуйста, помогите!

ответ

0

Возьмите взгляд на documentation вы увидите, что ответ есть метод readEntity, который можно использовать для чтения InputStream:

InputStream in = response.readEntity(InputStream.class); 
... // Read from the stream 
in.close(); 
Смежные вопросы