使用动态路径创建 aws lambda 函数

Shm*_*uer 2 node.js express aws-lambda visual-studio-code

我正在使用 VS Code aws 插件创建一个 aws lambda 函数,语言是 nodeJS。

我需要在请求中传递一个动态 ID,最好作为路径的一部分。

在nodeJS Express中我会这样做

/api/route/:id
Run Code Online (Sandbox Code Playgroud)

但是,当我尝试在 lambda 函数中执行此操作时,template.yaml如下所示

Events:
    HelloWorld:
      Type: Api # More info about API Event Source: https://github.com/awslabs/serverless-application-model/blob/master/versions/2016-10-31.md#api
      Properties:
      //***** this line
        Path: /api/route/:id
        Method: get
Run Code Online (Sandbox Code Playgroud)

它不起作用

任何帮助,将不胜感激

PS我可以像这样将它作为查询参数传递

https://awslambdafunction.com/api/route/?id=1234
Run Code Online (Sandbox Code Playgroud)

它确实有效,但我真的很想将它作为路径本身的一部分,如下所示

https://awslambdafunction.com/api/route/1234    
Run Code Online (Sandbox Code Playgroud)

小智 5

什米利,

我不确定它是否适用于 AWS VS Code 插件。但我使用无服务器框架这样做了:

functions:
  updateBook:
    handler: handler.updateBook
    events:
      - http:
          path: /book/{id}
          method: put
          private: true
Run Code Online (Sandbox Code Playgroud)

它可能会让你走上正确的方向。