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

如何在aws-cli的lambda invoke命令中添加请求头

解决aws-cli调用Lambda无法携带请求头的问题

另外注意你当前使用的调用命令中函数名参数有误,正确参数为--function-name而非--function。携带请求头需要根据你的用途对应选择实现方案:

传递自定义头到Lambda函数内部供业务逻辑使用

Lambda函数接收到的入参完全由调用时传入的payload决定,你可以直接把请求头字段整合到payload结构中即可。如果需要模拟API Gateway触发Lambda的标准事件结构,可参考以下payload格式:

{
  "headers": {
    "Content-Type": "application/json",
    "X-Custom-Header": "自定义头值"
  },
  "body": "{\"some\": \"value\"}",
  "httpMethod": "POST"
}

对应的调用命令示例:

aws lambda invoke --function-name function-name --payload '{"headers":{"X-Custom-Header":"test","Content-Type":"application/json"},"body":"{\"some\":\"value\"}"}' outfile.txt

Windows终端需要调整引号转义规则,JSON内部双引号前加反斜杠,外层用双引号包裹

给调用AWS Lambda服务的API请求本身附加自定义头

如果需要给发送到AWS服务端的API请求添加自定义头(比如用于审计、权限标识等场景),AWS CLI v2支持直接使用--extra-headers参数实现:

aws lambda invoke --function-name function-name --payload "{\"some\": \"value\"}" --extra-headers "X-Custom-Api-Header=自定义值" outfile.txt

需要添加多个请求头时,用空格分隔多个键值对即可:

aws lambda invoke --function-name function-name --payload "{\"some\": \"value\"}" --extra-headers "Header1=val1" "Header2=val2" outfile.txt

如果你使用的是AWS CLI v1,没有原生支持的额外头参数,建议升级到CLI v2版本即可使用上述参数。

内容的提问来源于stack exchange,提问作者Andre Hadianto

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.09.28 04:36:03