Скажите конечной точке REST Spring Boot разрешить запросы, в которых отсутствует заголовок Accept - PullRequest
0 голосов
/ 02 июня 2019

У меня есть клиентские приложения, которые отправляют запрос конечной точке без заголовка Accept.Конечная точка завершается с ошибкой «Не удалось найти приемлемое представление», но я бы хотел, чтобы контроллер все равно обработал запрос.

Я пишу приложение Java, которое обрабатывает запросы API REST и возвращает фид OPDS.Когда клиент отправляет запрос и включает заголовок (на iOS все клиенты включают «accept = / »), конечная точка работает как положено.

Но когда клиент (все, что япротестировано на Android) не включает этот заголовок, тогда Spring не передает запрос методу контроллера и вместо этого возвращает ответ HTTP 406. Вместо данных.

Я бы хотел, чтобы метод контроллера былвызывается независимо от существования заголовка accept и всегда возвращает содержимое.

Не так уж много кода для отображения, так как это скорее проблема интеграции.

Все клиенты iOS отправляют запросы со следующими заголовками:

2019-04-27 14:07:16.362 DEBUG 74305 --- [nio-7171-exec-5] o.c.web.opds.OPDSRequestInterceptor      : Header[accept]=*/*
2019-04-27 14:07:16.362 DEBUG 74305 --- [nio-7171-exec-5] o.c.web.opds.OPDSRequestInterceptor      : Header[accept-language]=en-us
2019-04-27 14:07:16.362 DEBUG 74305 --- [nio-7171-exec-5] o.c.web.opds.OPDSRequestInterceptor      : Header[connection]=keep-alive
2019-04-27 14:07:16.362 DEBUG 74305 --- [nio-7171-exec-5] o.c.web.opds.OPDSRequestInterceptor      : Header[accept-encoding]=gzip, deflate
2019-04-27 14:07:16.362 DEBUG 74305 --- [nio-7171-exec-5] o.c.web.opds.OPDSRequestInterceptor      : Header[user-agent]=Chunky/2.5.9002 CFNetwork/978.0.7 Darwin/18.5.0

Но все клиенты Android отправили:

2019-04-27 14:02:06.724 DEBUG 74305 --- [nio-7171-exec-1] o.c.web.opds.OPDSRequestInterceptor      : Header[connection]=Keep-Alive
2019-04-27 14:02:06.724 DEBUG 74305 --- [nio-7171-exec-1] o.c.web.opds.OPDSRequestInterceptor      : Header[user-agent]=Apache-HttpClient/UNAVAILABLE (java 1.5)

Я бы хотел, чтобы метод получил запрос независимо от заголовка accept.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...