У меня есть конечная точка отдыха Spring Boot, определенная в интерфейсе для загрузки образа
@GetMapping(value = "/{name}")
ResponseEntity<ByteArrayResource> getFileByName(@PathVariable("name") String name);
И я использую Feign Builder для вызова этой конечной точки.
Feign.builder()
.client(new ApacheHttpClient())
.contract(new SpringMvcContract())
.decoder(new JacksonDecoder())
.encoder(new JacksonEncoder())
.target(clazz, url)
При вызове, Я получаю ниже ошибку
com.fasterxml.jackson.core.JsonParseException: Unexpected character ('�' (code 65533 / 0xfffd)): expected a valid value (number, String, array, object, 'true', 'false' or 'null')
at [Source: (BufferedReader); line: 1, column: 2]
Когда я пытаюсь вызвать конечную точку непосредственно из бессонницы, она работает нормально.Но не удается через Feign Builder.Тип содержимого ответа: image / jpeg
Есть ли в feign какой-либо конкретный декодер для обработки ByteArrayResource?Я пытался ResponseEntityDecoder , StreamDecoder и JacksonDecoder .Ничего из этого не работает.
При отладке я вижу, что readValue Jackson ObjectMapper не работает.Я попытался изменить тип возвращаемого значения с ByteArraySource на byte [], тоже не сработало.
Любая помощь?