Lambda 调用 Lambda - 如何在第二个中访问有效负载



我正在使用以下方法从另一个 Lambda 异步调用 Lambda:

payload = {"id":item['id']}
invoke_lambda = lambda_client.invoke(FunctionName="process",
                                     InvocationType="Event",
                                     Payload=json.dumps(payload)) # Use InvocationType="RequestResponse" for synchronous run

这可能相当明显,但我找不到它的文档 - 我如何访问定义为的第二个 lambda 中的有效负载:

def process(event, context):
    (...)

您的有效负载应位于event字典的body中。 试试json.loads(event['body']).get('id')

可能的重复问题 -- Nodejs - 调用 AWS。另一个 lambda 函数中的 lambda 函数

请注意,您可能需要查看步骤函数,以防止 Lambda A 在等待 Lambda B 完成时产生成本。

在第二个 lambda 上,你只需要做id = context['id'] 。当它是异步调用时,event 不会附带body密钥。

最新更新