Внутренняя ошибка сервера AWS API-шлюз с пользовательским авторизатором - PullRequest
0 голосов
/ 19 марта 2020

Я пытаюсь защитить лямбда-функцию с помощью специального авторизатора (который проверяет jwt) на AWS API Gateway. Я также хочу передать любую queryStringParameters в свою лямбда-функцию, поэтому я хочу оставить свой запрос на интеграцию лямбда-прокси.

enter image description here

Пользовательский Authorizer установлен, протестирован и работает

enter image description here

Проблема:

Когда я вызываю эту конечную точку (после развертывания), я получаю HTTP 500 ответ.

{
    "message": "Internal server error"
}

Когда я удаляю свой собственный авторизатор ИЛИ отменяю интеграцию лямбда-прокси, я получаю нормальный вывод от моей лямбды

def lambda_handler(event, context):
    return {
        'status': 400,
        'body' : json.dumps('hello World'),
        'headers': {
            'Access-Control-Allow-Origin': "*"
        },
        'isBase64Encoded': 'false'
    }

Кто-нибудь сталкивался с этим? AWS документации по этому вопросу немного: /

Спасибо!

1 Ответ

0 голосов
/ 19 марта 2020

Я бью себя по голове после этого. Причина в том, что моя лямбда-функция возвращалась. Это должно было быть

def lambda_handler(event, context):
    return {
        'statusCode': 400,
        ...

В отличие от

def lambda_handler(event, context):
    return {
        'status': 400,
     ...

Если бы документы AWS были лучше / я не был бы таким тупым: D

...