簡體   English   中英

用於字節的Spring REST模板

[英]Spring REST Template for Byte

我使用spring框架rest模板獲取字節數組,但我還需要獲取此字節的Mediatype。

此bytearray的mediaType可以是任何類型。

現在用於獲取字節的代碼如下。

   HttpHeaders headers = new HttpHeaders();
   headers.setAccept(Collections.singletonList(MediaType.valueOf("application/pdf")));
   ResponseEntity<byte[]> result = restTemp.exchange(url, HttpMethod.GET, entity, byte[].class,documentId);

以上代碼僅獲取pdf內容類型。

如何將contentType設置為接受任何通用MediaType,因為另一端的服務為byteArray提供任何隨機MediaType。

有人可以建議如何獲取MediaType。

歡迎任何建議..

只是不發送accept標頭不強制服務器返回該content-type 這與發送通配符*/*

//HttpHeaders headers = new HttpHeaders();
//headers.setAccept(Collections.singletonList(MediaType.WILDCARD));
ResponseEntity<byte[]> result = restTemp.exchange(url, HttpMethod.GET, entity, byte[].class,documentId);

在此之后,從響應的標題中提取content-type

 byte body[] = result.getBody();
 MediaType contentType = result.getHeaders().getContentType();

您可以在HTTP標頭中存儲媒體類型,並使用 - ResponseEntity.getHeaders()。 或者您可以將字節數組和媒體類型包裝到holder類中。

MediaType mediaType = result.getHeaders()。getContentType();

您可以將MediaType設置為application/octet-stream ,請在此處查看

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM