Пытаюсь разобраться с авторизаторами в AWS Api Gateway. Как я понимаю, если исключение в логике имеет место в авторизаторе, то мы обязательно получим 401 с сообщением неавторизованным. Можно ли вернуть неверный ответ на запрос или необработанный ответ объекта?
Я обнаружил, что авторизаторы работают немного странно:
1) пользовательских авторизаторов в Amazon API Gateway 500, ошибка
2) https://forums.aws.amazon.com/message.jspa?messageID=753817
Это возможно. Есть несколько решений.
Функция лямбда может генерировать пользовательское исключение, и вы можете выполнить перехват на основе исключений в шлюзе API для отправки кода состояния 400.
Используйте ответ отказа, но в контексте есть причина отказа. Когда происходит отказ, код может проверить причину в контексте и вернуть соответствующий ответ.
Пожалуйста, обратитесь к ссылкам ниже для отображения исключений 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