有什么方法可以知道步骤函数是否调用了 Lambda?

Is there any way to know if a Lambda was invoked by a step function?

lambda 函数有什么方法可以知道它是否在步骤函数中被调用?无需开发人员在 step 函数内逐步传递参数。我检查了上下文,它没有提供这样的信息。

我想 aws 会为传递给 lambda 函数的步骤函数提供某种唯一标识符。

没有默认方法可以这样做。在调用 Lambda 函数时,Step Functions 本身不会传递任何事件详细信息。

如您所述,您可以通过 InputPathResultPathOutputPath 逐步传递输入。或者,您可以在状态机中声明 Parameters

{
     "StartAt": "HelloWorld",
     "States": {
         "Echo": {
             "Type": "Task",
             "Resource": "arn:aws:lambda:us-east-1:1234567890:function:echo",
             "Parameters": {"invocation_type": "StepFunction"},
             "End": true
          }
     }
}

以上函数将通过 {"invocation_type": "StepFunction"} 事件调用。