2017-02-08 7 views
0

Я настроил свой GET API через AWS API Gateway. Конечная точка работает с сервисом Джерси 2.x REST.AWS API Gateway возвращает HTTP 406

Клиент не может вставить заголовок «Принять», и Gateway API считает нужным вставить свой собственный заголовок «Принять»: «приложение/json».

Это вызывает сбой сервера запрос с HTTP 406, как на стороне сервера API есть «@Produces (MediaType.APPLICATION_OCTET_STREAM» нотацию.

Кто-нибудь есть какие-либо идеи о том, как я могу остановить API Шлюз делать это, не прибегая к Lambda?

ответ

0

Вы можете изменить это путем добавления заголовка в Integration Request. Вы добавляете имя заголовка Accept, а затем установите значение опорожнить одиночные кавычки ''. Это необходимо отправить пустой заголовок Accept до конечной точки.

Или вы n задает значение чему-то еще, если необходимо, просто используйте одинарные кавычки, как указано выше 'application/octet-stream'

+0

Я пробовал это ранее, но из-за ошибки в APIG возвращаемое значение Content-Type возвращалось из APIG как ' \ */\ *». После того, как вы подняли билет поддержки, все хорошо. :) – Earthling

+0

Ухаживать за обновлениями с помощью поддержки? Благодаря! –

+0

Ну, поддержка в основном говорит, что то, что я пробовал, похоже на ваш предложенный ответ, было правильным, и они применили новый код для APIG для устранения ошибки. – Earthling