0

我已经看到了很多关于如何在 vscode 中离线调试 lambda 函数的答案,并且我已经得到了这个工作,在某种程度上我可以设置断点并单步执行它。

但是我不确定如何为 lambda 函数指定有效负载输入以进行测试。

{
    "configurations": [
        {
            "type": "aws-sam",
            "request": "direct-invoke",
            "name": "Downloads:charge.handler (nodejs10.x)",
            "invokeTarget": {
                "target": "code",
                "projectRoot": "",
                "lambdaHandler": "charge.handler"
            },
            "lambda": {
                "runtime": "nodejs10.x",
                "payload": {},
                "environmentVariables": {}
            }
        }
    ]
}

似乎无论我在有效负载 json 字段中输入了什么,当我的 lambda 函数运行时,我只会看到一个空的参数对象。我还在 aws 服务器上保存了一个 ssm 密钥。我使用 SAM CLI、Docker 和 AWS CLI 设置的本地调试的 lambda 函数会自动使用它吗?

任何帮助将不胜感激。

谢谢,格雷格

4

1 回答 1

0

好的,所以我没有正确指定有效负载。

应该:

"payload": { "json": { "body": {
                "item1": 1, "item2": 2, ...
           }}}
于 2020-10-30T16:46:14.967 回答