Ran*_*olf 2 amazon-web-services aws-lambda aws-step-functions
我试图弄清楚如何将多个输入传递给我的ARN。但是,看来我做不到。
以下是我的机器规格
{
"StartAt": "DemoStateFunction",
"Version": "1.0",
"States": {
"DemoStateFunction": {
"Type": "Task",
"Resource": "ARN-Demo-Function",
"InputPath": "$.demostate1",
"Next": "DemoStateFunction2"
},
"DemoStateFunction2": {
"Type": "Task",
"Resource": "ARN-Demo-Function",
"InputPath": "$.demostate2",
"End": true
}
}
}
Run Code Online (Sandbox Code Playgroud)
这是我的意见
{
"demostate1": {
"data": "john",
},
"demostate2": {
"data": "doe"
}
}
Run Code Online (Sandbox Code Playgroud)
执行此任务时。它成功检索了我的demostate1数据,但是似乎无法像我在“ TaskStateEntered”步骤中看到的那样看到demostate2。
机器状态数据从一种状态传递到另一种状态。
如果您从任务返回数据并且未ResultPath在状态上指定属性,则任务的输出将成为下一个状态的输入。这是您demostate2迷路的地方。
来自:http : //docs.aws.amazon.com/step-functions/latest/dg/amazon-states-language-input-output-processing.html
任务结果与状态输出一起发送(成为下一个任务的输入)。
因此,您需要DemoStateFunction在DemoStateFunction状态上使用类似以下内容的方法将结果合并到输入数据中:
"DemoStateFunction": {
"Type": "Task",
"Resource": "ARN-Demo-Function",
"InputPath": "$.demostate1",
"ResultPath": "$.demooutput1",
"Next": "DemoStateFunction2"
},
Run Code Online (Sandbox Code Playgroud)
这将从任务中获取结果,并将其合并到该demooutput1属性下的现有输入结构中。
| 归档时间: |
|
| 查看次数: |
1274 次 |
| 最近记录: |