我正在调用AWS Lambda CLI to invoke我的函数。我想将函数响应(Payload)作为我的返回对象的一部分,所以我传递--invocation-type RequestResponse
。有了它,我仍然只在我的输出文件中获取函数输出(我实际上并不关心)。我希望它作为从这个CLI调用返回的对象的一部分,但我只获得LogResult和StatusCode。
{
"LogResult": "encoded blah blah blah",
"StatusCode": 200
}
我是在做我的命令错字还是我错过了什么?如何将函数输出(Payload)作为此CLI调用返回的对象的一部分?
aws lambda invoke --function-name myFunction --invocation-type RequestResponse --log-type Tail --payload {} --region us-east-1 testoutput.txt
答案 0 :(得分:2)
我希望将函数响应(Payload)作为返回对象的一部分,以便我通过
--invocation-type RequestResponse
这不是该选项的作用。此外,指定它本质上是一个无操作,因为RequestResponse
已经是默认值。替代方法(Event
)告诉Lambda异步运行该函数(从您的角度来看),而无需等待它完成。它不是关于如何收集或返回响应,而是响应是否被完全丢弃,因为您的调用请求已从正在运行的函数中分离并立即返回。
我仍然只在输出文件中输出功能
它到底应该如何运作。那个为什么你必须指定一个输出文件。函数输出仅写入该文件。