在 API 网关传递的 Lambda (Nodejs) 中获取 url 参数

Get url parameter in Lambda (Nodejs) passed by API Gateway

我已经像这样设置了 API 网关端点:

获取文件/{文件名}

因此,我会这样称呼它:https://mydomain/api/files/somefile

我还有一个空的 Nodejs lambda 函数:

exports.handler = 函数(事件,上下文){

//在这里检索名为'filename'的参数并用它做一些事情

};

如何获取 GET 请求中传递的参数?。我已经检查了事件和上下文对象,但找不到任何有用的信息。

谢谢!!

要获取路径参数、HTTP header 变量(等),您必须创建一个映射模板。

  1. 从 API 网关控制台,select 您获取资源,您应该会看到一个面板 w/4 框。
  2. 单击 "Integration Request"(右上框)
  3. 展开底部"body mapping template"
  4. 定义内容类型(很可能"application/json")
  5. 尝试"generate template:method request passthru"开始
  6. 保存
  7. 现在为您的 HTTP Get 尝试 "Test",希望您会看到丢失的路径参数等。

祝你好运。