Aws lambda AWS API网关路由

Aws lambda AWS API网关路由,aws-lambda,Aws Lambda,在存在或不存在特定标头的情况下,如何将基于API网关的请求路由到基于lambda函数的a/B/C https://api.example.com/prod if the headers "UserType" is: guest -> redirect to lambda A normal -> redirect to lambda B admin -> redirect to lambda C 我知道如何只使用不同的URL,例如: https://ap

在存在或不存在特定标头的情况下,如何将基于API网关的请求路由到基于lambda函数的a/B/C

https://api.example.com/prod

if the headers "UserType" is:

guest -> redirect to lambda A
normal -> redirect to lambda B
admin -> redirect to lambda C
我知道如何只使用不同的URL,例如:

https://api.example.com/prod
https://api.example.com/dev

这实际上是不可能的。我们只能将一个Lambda函数与API网关的特定资源绑定。标头可以作为lambda函数本身内的事件参数访问

首选的方法是在lambda中创建3个不同的函数(您的业务逻辑将驻留在这里)&根据用户类型,您可以调用该函数

如果您真的想使用三种不同的lambda,可以使用aws sdk中可用的invoke方法。您可以参考以下链接了解代码语法和示例


第二种方法肯定会增加响应时间。

答案非常清楚!谢谢你花时间帮助一个陌生人。