Мне нужно обслуживать несколько типов файлов, используя одну и ту же конечную точку (zip, pdf, xml).
Мне нужно было добавить обработку ошибок на эти конечные точки, чтобы в случае ошибки они возвращали json ( используя совет контроллера), чтобы указать пользователю на проблему. Например:
@GetMapping(value = "api/books", produces = {applicaton/zip, application/json}
public ResponseEntity<byte[]> getZipedBooks(){...}
@GetMapping(value = "api/books", produces = {applicaton/pdf, application/json}
public ResponseEntity<byte[]> getPdfBooks()(...}
Без application/json
Spring смогла различить эти конечные точки и вызвать правильную на основе заголовка accept. Но когда я добавил json Spring, теперь выдает исключение: org.springframework.web.HttpMediaTypeNotAcceptableException: Could not find acceptable representation
, даже если из заголовка accept: application/json,application/pdf
можно вывести, что getPdfBooks должен вызываться.
Есть ли способ настроить Spring для работы с несколькими типы содержимого на одной конечной точке, или мне нужно создать специальные конечные точки для каждого типа файла?