Интегрируйте Lambda с конечной точкой покоя, используя aws cli - PullRequest
0 голосов
/ 22 января 2019

Я пытаюсь интегрировать лямбда и остальную конечную точку шлюза API с помощью aws cli и запускаю следующую команду, но получаю следующую ошибку

aws apigateway put-integration  --region us-west-2 --rest-api-id 91b73m5i10  --resource-id pjg2ac --http-method GET --type AWS --integration-http-method GET --uri arn:aws:apigateway:us-west-2:lambda:path/apigateway/functions/arn:aws:lambda:us-west-2:xxxxx:function:sendFile_Trips_divyanayan/invocations

Произошла ошибка (NotFoundException) при вызове операции PutIntegration: Неверный идентификатор метода

Видел эту статью, но не очень помог

Создание лямбда-интеграции api-gateway с помощью aws-cli

1 Ответ

0 голосов
/ 22 января 2019

Ошибка не требует пояснений.Вполне вероятно, что ваша конечная точка ApiGateway не имеет метода GET для этого ресурса.

Пожалуйста, добавьте то же самое и затем попробуйте выполнить приведенную выше команду.

Возможно, вам понадобится добавить параметр --credentials, который ARN для роли IAM, который позволяет эту интеграцию с функцией lambda.

Вам также необходимо изменить --integration-http-methodна POST (Это метод интеграции по умолчанию между apigateway-lambda.

aws apigateway put-integration  --region us-west-2 --rest-api-id 91b73m5i10  --resource-id pjg2ac --http-method GET --type AWS_PROXY --integration-http-method POST --uri arn:aws:apigateway:us-west-2:lambda:path//2015-03-31/functions/arn:aws:lambda:us-west-2:xxxxxxxx:function:sendFile_Trips_divyanayan/invocations --credentials arn:aws:iam::xxxxxxxx:role/lambda-role

Кроме того, роль, указанная в учетных данных, должна иметь значение ниже доверенных отношений (Принципал)

    {
        "Version": "2012-10-17",
        "Statement": [
        {
            "Effect": "Allow",
            "Principal": {
            "Service": [
                "apigateway.amazonaws.com",
                "logs.amazonaws.com",
                "lambda.amazonaws.com"
            ]
        },
        "Action": "sts:AssumeRole"
    }
  ]
}

Примечание : Не открывать аккаунт, задавая вопросы на внешних форумах.

...