Вы можете получить доступ ко входу JSON, с которого вы запустили машину состояний, используя: $$.Execution.Input.todo
. Кроме этого, вы не можете напрямую получить доступ к предыдущему состоянию с одного шага на следующий.
В качестве примера, скажем, у вас есть A->B->C
Допустим, вы прошли A
, который дал новое поле: a : 1
, а затем вы прошли B
, и он возвращает b : 2
, когда вы доберетесь до C
, у вас будет только b : 2
. Но если B
также вернет a : 1
, вы получите {a : 1, b : 2}
в C
. Как правило, это то, что вы делаете, чтобы передать состояние с шага на несколько шагов раньше.
Есть и другие вещи, которые люди делают, например, хранение данных в корзине s3
и доступ к этой корзине на разных этапах. Вы также можете запросить пошаговую функцию, но это может быть грязно.
Другие хаки включают добавление шага прохода в параллельном блоке, но эти хаки не очень хороши, правильный способ передачи данных между ваши шаги, или, надеюсь, есть то, что вам нужно в вашем вводе выполнения.