You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

使用Postman测试AWS Lambda函数时返回空Event对象求助

问题:Lambda返回空Event对象(Postman请求时)

问题重现

用Node.js编写的Lambda函数,在API Gateway测试控制台能正常返回完整Event,但通过Postman请求时返回空对象{}。Lambda代码如下:

export const handler = async (event, context, callback) => {
  // Log the headers to CloudWatch
  console.log('Received events:', event);

  // Create a response object containing the headers
  const response = {
    statusCode: 200,
    body: JSON.stringify(event, null, 2), // Pretty-print the JSON
  };

  // Return the response
  return response;
};

Postman请求对应的curl命令:

curl --location 'https://site.amazonaws.com/beta/KlikyTestAPI' \
--header 'Content-Type: application/json' \
--header 'Accept: application/json' \
--header 'Authorization: ••••••'

实际响应结果:

{
    "statusCode": 200,
    "body": "{}"
}

原因分析

核心问题是API Gateway的集成配置未正确将外部请求数据传递到Lambda的Event对象中:

  • API Gateway测试控制台会自动填充模拟请求数据到Event,但实际外部请求(如Postman)需要正确的集成映射才能把请求头、参数等数据传递给Lambda。
  • 若使用REST API且未开启「Lambda代理集成」、也未配置映射模板,Lambda会收到空Event;若使用HTTP API,默认非代理集成不会传递完整请求数据。

解决方法

方法1:开启Lambda代理集成(推荐)

无论REST API还是HTTP API,开启代理集成后,API Gateway会自动将完整请求数据(包括headers、query参数、requestContext等)封装到Lambda的Event对象中:

  1. 进入AWS API Gateway控制台,找到目标API和对应的资源方法(如GET /KlikyTestAPI)
  2. REST API:点击「集成请求」,勾选「使用Lambda代理集成」,保存后重新部署API
  3. HTTP API:在集成设置中选择「Lambda代理」类型,保存后重新部署

开启代理后,Lambda收到的Event结构示例:

{
  "resource": "/KlikyTestAPI",
  "path": "/beta/KlikyTestAPI",
  "httpMethod": "GET",
  "headers": {
    "Content-Type": "application/json",
    "Authorization": "••••••"
  },
  "requestContext": {
    // 请求上下文相关信息
  }
}

方法2:配置映射模板(仅REST API)

若不想使用代理集成,可手动配置映射模板传递请求数据:

  1. 进入目标方法的「集成请求」,展开「映射模板」
  2. 点击「添加映射模板」,输入application/json,勾选「当没有定义模板时通过」
  3. 在模板内容中输入$input.json('$')(将整个请求数据映射到Event),或自定义映射规则,例如:
    {
      "headers": $input.json('$headers'),
      "queryParams": $input.json('$queryStringParameters')
    }
    
  4. 保存配置后重新部署API

验证步骤

修改配置后,重新用Postman发起请求,同时查看Lambda的CloudWatch日志(Received events:对应的日志条目),确认Event对象已包含请求数据。

内容的提问来源于stack exchange,提问作者dinesh balan

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.06.22 10:12:20