【问题标题】:Calling same lambda function for each API resource为每个 API 资源调用相同的 lambda 函数
【发布时间】:2019-11-27 22:27:23
【问题描述】:

我有一个 API 可以为每个资源调用相同的 lambda 函数。根据访问的资源(取自事件对象的资源字段),在 lambda 函数内部采取不同的操作。

我目前正在设置多个环境(开发和生产),使用 API 阶段变量来管理调用哪个函数版本,如 here 所述。但是,我现在必须在每个资源的 lambda 函数字段中添加“:${stageVariables.lbfunc}”,并手动授予每个资源实际使用该 lambda 函数别名的权限。这似乎是一个很大的开销,尤其是考虑到您不能轻易更改 stageVariable 以引用不同的别名,因为您必须授予每个资源再次使用新别名的权限。

有没有办法为每个 API 设置一个函数,而不是为每个端点设置相同的函数,我的一般方法是错误的,还是没有更简单的方法可以做到这一点?

【问题讨论】:

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


    【解决方案1】:

    您可以创建代理资源以将所有请求定向到一个 Lambda 函数。 https://docs.aws.amazon.com/apigateway/latest/developerguide/api-gateway-set-up-simple-proxy.html

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2021-06-04
      • 2018-01-18
      • 1970-01-01
      • 1970-01-01
      • 2014-04-08
      • 1970-01-01
      • 1970-01-01
      • 2020-05-13
      相关资源
      最近更新 更多