Вернуть неверный ответ на запрос в лямбда-авторизатор. Является ли это возможным? - PullRequest
0 голосов
/ 01 ноября 2018

Пытаюсь разобраться с авторизаторами в AWS Api Gateway. Как я понимаю, если исключение в логике имеет место в авторизаторе, то мы обязательно получим 401 с сообщением неавторизованным. Можно ли вернуть неверный ответ на запрос или необработанный ответ объекта?

Я обнаружил, что авторизаторы работают немного странно:

1) пользовательских авторизаторов в Amazon API Gateway 500, ошибка

2) https://forums.aws.amazon.com/message.jspa?messageID=753817

1 Ответ

0 голосов
/ 01 ноября 2018

Это возможно. Есть несколько решений.

  1. Функция лямбда может генерировать пользовательское исключение, и вы можете выполнить перехват на основе исключений в шлюзе API для отправки кода состояния 400.

  2. Используйте ответ отказа, но в контексте есть причина отказа. Когда происходит отказ, код может проверить причину в контексте и вернуть соответствующий ответ.

Пожалуйста, обратитесь к ссылкам ниже для отображения исключений https://docs.aws.amazon.com/apigateway/latest/developerguide/handle-errors-in-lambda-integration.html#handle-custom-errors-in-lambda-integration

http://awspapers.blogspot.com/2018/08/integrate-api-with-lambda-part-5.html

...