10

我希望能够更改在每个 API Gateway 方法中定义的端点,以便名为“Dev”的登台环境指向我的内部开发 API,而 Prod 阶段当然会路由到我的生产 API。

现在我必须手动更改每种方法,然后部署到 prod stag,但现在要进行任何测试,我必须再次将它们全部更改为开发阶段。

我正在通过 DNS 切换将 Dev 转移到 Prod,但未来的开发仍然需要对每种方法进行更改。

例子:

我有一个名为 User 的资源和一个映射到端点(HTTP 代理)的 GET 方法 - > http://dev.mytestapp.com/api/v1/user

然后我部署到一个名为 Dev 的阶段 - Dev 阶段给了我一个 URL 来调用来请求这个资源,例如。https://xxxobl.execute-api.us-east-1.amazonaws.com/dev/user

现在我进行了测试,它按预期工作,所以我想把它移到生产阶段,称为阶段。当我部署到 prod 时,我的调用 url 现在是https://xxxxobl.execute-api.us-east-1.amazonaws.com/prod/user

但问题是 API 仍在将端点映射到http://dev.mytestapp.com/api/v1/user而不是http://prod.mytestapp.com/api/v1/user

所以我的舞台和网址已经改变,但实际调用的 API 被硬编码为 dev。

有任何想法吗?谢谢

4

1 回答 1

11

您可以利用阶段变量将端点路由到不同的 API。 此页面向您展示如何为 http 代理设置阶段变量。您也可以将阶段变量用于 lambda 函数。

于 2015-11-19T16:10:32.533 回答