当我尝试添加特定于供应商的标头(其说法不支持的媒体类型)时,我尝试将jersey api调用转换为spring boot resttemplate客户端调用。 我尝试过这样
HttpHeaders headers = new HttpHeaders();
headers.setAccept(Arrays.asList(MediaType.ALL));
headers.setContentType(MediaType.ALL);
HttpEntity<String> entity = new HttpEntity<String>("parameters", headers);
ResponseEntity<Admin> result = restTemplate.exchange(url, HttpMethod.GET, entity, Admin.class);
我什至尝试了媒体类型的不同组合,但没有奏效,我还尝试添加MediaType.parseMediaType("application/vnd.....);
之类的媒体类型
请为此提供一些帮助。请让我知道什么是httpMessage转换器,以及如何将其添加到我们的自定义供应商特定媒体类型中。
答案 0 :(得分:1)
您将无法使用setContentType(MediaType mediaType)
设置自定义内容类型,因为它接受MediaType
对象,您的自定义MediaType无法转换为该对象。
您可以使用以下设置自定义内容类型:
headers.set(HttpHeaders.CONTENT_TYPE,"application/custom");
答案 1 :(得分:0)
使用:
headers.setContentType(MediaType.valueOf(VENDOR_MEDIA_TYPE));