Я использую граф API:
GET /users/{id | userPrincipalName}/photo/$value
чтобы получить фотографию профиля конкретного пользователя с моим токеном доступа. В почтальоне я могу увидеть изображение, используя приведенный выше вызов. В моем приложении с весенней загрузкой я использую, как показано ниже:
final ResponseEntity<Object> profilePicture = restTemplate.exchange(graphUrl, HttpMethod.GET, new HttpEntity<>((header)), new ParameterizedTypeReference<>() {});
Я получаю ошибку ниже:
Could not extract response: no suitable HttpMessageConverter found for response type [class java.lang.Object] and content type [image/jpeg]
Я определил RestTemplate как:
@Bean
public RestTemplate restTemplate() {
return new RestTemplate();
}
Может ли кто-нибудь помочь мне с этим?
Вам нужно добавить соответствующий MessageConverter
к вашему RestTemplate
.
Что-то вроде:
RestTemplate restTemplate = new RestTemplate();
restTemplate.getMessageConverters().add(new ByteArrayHttpMessageConverter());
ResponseEntity<byte[]> response = restTemplate.exchange(graphUrl,
HttpMethod.GET, new HttpEntity<>((header)), byte[].class);
Вы можете прочитать больше на эту тему здесь: https://docs.spring.io/spring-framework/docs/current/javadoc-api/org/springframework/http/converter/HttpMessageConverter.html
Спасибо, я пытался с Byte[].
Попробуйте использовать
byte[]
вместоObject
вParameterizedTypeReference