【问题标题】:How to connect specific AWS API Gateway stage to specific AWS lambda alias如何将特定 AWS API Gateway 阶段连接到特定 AWS lambda 别名
【发布时间】:2018-10-21 15:19:01
【问题描述】:

我有 AWS Lambda 函数,我通过 REST API 调用 AWS API Gateway 来调用它。对于 Lambda 函数,我配置了两个带版本控制的别名 - QA 和 Prod。

API 网关配置了 Lambda 代理集成请求。我了解 AWS API Gateway 阶段功能并创建了两个阶段(分别为 QA 和 Prod),但我在阶段配置中看不到任何 Lambda 别名设置。

如何为 QA 阶段指定 QA Lambda 别名,为 Prod API 阶段指定 Prod Lambda 别名?

【问题讨论】:

    标签: api amazon-web-services aws-lambda aws-api-gateway


    【解决方案1】:

    在 API Gateway 中的集成请求中,您可以将别名添加到 ARN 的末尾,以确保您的终端节点指向正确的别名。像这样的东西 arn:aws:lambda:region:account-id:function:function-name:alias-name

    您不能告诉 API Gateway 阶段始终使用特定的 Lambda 别名并拥有多个指向不同别名的 Gateway 阶段。

    每次您需要部署到网关阶段时,您都必须确保将未部署的 API Gateway 端点配置为指向正确的 Lambda 别名,然后再部署到与该环境匹配的阶段。

    这很难维护,因此我建议使用无服务器框架或其他框架将您的两个不同阶段视为完全不同的资源。

    有用的资源:

    【讨论】:

      【解决方案2】:

      在您的集成请求中,您将看到 Lambda 函数 - 单击它进行编辑并在其后添加 :QA 或 :Prod 并点击复选标记,我认为可以做到。

      示例:myLambda:Prod

      【讨论】:

      • 但这会使舞台具体化?
      猜你喜欢
      • 2018-10-29
      • 2019-05-29
      • 1970-01-01
      • 2023-01-24
      • 2021-08-14
      • 2020-09-16
      • 1970-01-01
      • 2021-01-29
      • 2021-02-07
      相关资源
      最近更新 更多