【发布时间】:2019-03-06 05:40:25
【问题描述】:
我尝试通过具有不同环境变量的 2 个阶段 的无服务器框架部署 lambda 函数。 我想要一个用于生产的 lambda 和一个用于开发的 lambda。 唯一的区别是应该使用的数据库的环境变量。
我使用 serverless deploy -s dev 和 serverless deploy -s prod 功能来部署它。例如,所需的角色具有后缀 -dev 或 -prod。所以没有问题。
但我无法将相同的 API 网关资源(例如 /foo)用于 GET 方法。我希望我会有类似的东西:example.com/dev/foo 和 example.com/prod/foo 但不幸的是出现以下错误:
此资源的 ApiGateway Method 方法已存在
我在这里错过了什么吗?资源/foo的方法GET方法是否独立于阶段?
【问题讨论】:
-
当我执行
-s dev和-s prod时,每个阶段都会获得一个单独的根地址/dev和/prod。如果 APIG 以前存在,则无服务器 CloudFormation 堆栈无法创建自己的。您可能需要删除之前创建的 APIG,并允许 Serverless CloudFormation 重新创建它。
标签: amazon-web-services aws-api-gateway serverless-framework