如何在步进函数中输出状态的原始输入?

How do I output original input of a state in a step function?

我有一个定义如下的阶跃函数:

{
  "StartAt": "A",
  "States": {
     "A": {
        "Type": "Task",
        "Resource": "do something",
        "Next": "B"
     },
     "B": {
        "Type": "Task",
        "Resource": "do something",
        "End": true
     }
  }
}

问题是状态 B 的输入。我需要它与状态 A 的输入相同。但是目前步骤 B 的输入是步骤 A 的输出。考虑到步骤 A 实际上调用了不同的步骤函数或执行了 DynamoDB 操作(不涉及 lambda),对于该步骤的输出我无能为力,但步骤 B 仍然需要接收与步骤 A 最初相同的输入。我该如何定义它?

在状态 A 中设置 ResultPath: null 以丢弃结果并保持状态不变。

您可以在 Parallel 中执行任务,大致如下:

   "A_And_B":{
      "Type":"Parallel",
      "Branches":[
         {
            "StartAt":"A",
            "States":{
               "A":{
                  "Type":"Task",
                  "Resource":"do something",
                  "Next":"B"
               }
            }
         },
         {
            "StartAt":"B",
            "States":{
               "B":{
                  "Type":"Task",
                  "Resource":"do something",
                  "End":true
               }
            }
         }
      ],
      "Next":"NextState"
   }