我有一个以数组作为输入的map状态。我知道map将遍历数组的元素。但是,我想要做的是将一个迭代的输出传递给下一个迭代的输入。在不写入DB或S3的情况下,这是可能的吗?我已经尝试了InputPath、OutputPath和ResultPath的无限组合,但是无论我如何尝试从状态0修改状态1的输入,它都只是从数组中读取,而且似乎不能从映射中修改输入数组。示例模板:
"Map":{
"Type": "Map",
"ItemsPath": "$.stages",
"Parameters": {
"stage.$": "$$.Map.Item",
},
"Iterator": {
"StartAt": "StartStage",
"States": {
"StartStage":{
"Type": "Task",
"Resource":"arn:aws:states:::lambda:invoke.waitForTaskToken",
"Parameters":{
"FunctionName":"...",
"Payload":{
"myArgs.$": "$.stage.Value",
}
},
"End": true
}
}
},
"MaxConcurrency": 1,
}
发布于 2021-02-25 09:06:33
另一种选择是创建一个while循环,如下所示:
这样,您就可以访问上一次迭代的结果。但是处理和合并迭代的结果并不是自动发生的,您需要添加一个状态来为您做这件事。
https://stackoverflow.com/questions/66348568
复制相似问题