为API CRUD定义Lambda函数的最佳方法是什么?

时间:2019-12-15 10:02:40

标签: aws-lambda

谁能让我知道为API CRUD定义lambda函数的最佳方法是什么?我有这两个选择。让我知道哪个更好。如果有的话,您可以为我提供更好的方法。

  1. 为每个Http方法创建单独的lambda函数吗?
  2. 创建一个lambda函数,然后在正文中使用httpMethod分隔每个请求?这是这两种方法的示例代码:

第一种方法:
在第一种方法中,我为每个请求都有单独的lambda函数。

exports.get = async event =>
{                                 
 //TODO: code here
}

exports.post= async event =>
{                                 
 //TODO: code here
}

第二种方法: 在第二种方法中,我有一个lambda函数,并且在主体中,API是分开的。

exports.handler = async event => 
{
   if(event.httpMethod ==='GET')
   {
     //TODO: code here
   }
   if(event.httpMethod ==='POST')
   {
     //TODO: code here
   }
}

1 个答案:

答案 0 :(得分:0)

我不确定这是否是最好的解决方案,但我建议您看看Serverless Express。它映射来自API网关的请求,以便您可以将其与Express一起使用。然后,您可以使用API​​网关的greedy proxy资源将所有资源路由到同一lambda。