字节跳动睡觉模板

2022-03-28 00:00:00 spring java cxf spring-rest
我正在使用Spring框架REST模板获取字节数组, 但我还需要获取此字节的MediaType。

此字节数组的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内容类型。

如何将Content Type设置为接受任何泛型MediaType,因为另一端的服务正在为byteArray提供任何随机的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();

相关文章