【发布时间】:2022-01-18 04:22:43
【问题描述】:
我确实有一个场景,其中输入 Json 字段有一个包含 3 个字段的映射,并且每个字段的存在我想执行一个 lambda。我正在尝试使用选择状态进行此操作,该状态可以正常工作,直到不超过一个条件为真。在我的场景中,我可以有 2 个条件也为真,这反过来应该调用 2 个选择条件的下一个状态。 似乎选择是开关盒的替代品,我正在寻找带有条件检查的 if 条件。 请分享任何此类案例的示例。
示例 json:-
"events" : {
"event" : {
"EVENT_1" : "ACTIVE",
"EVENT_2" : "ACTIVE"
}
}
示例状态机:-
ChoiceStateX": {
"Type": "Choice",
"Choices": [
{
"Variable": "$.event.EVENT_1",
"StringEquals": "ACTIVE",
"Next" : "Event_1"
},
{
"Variable": "$.event.EVENT_2",
"StringEquals": "ACTIVE",
"Next" : "Event_2"
}
}
}
事件 json 中的事件不是固定字段。它可以只有一个 event_1 或 2,甚至可以有 3 个事件。由于有许多事件,它应该调用那些许多任务。 所以“下一个”是完全动态的,并且依赖于输入的 Json。 请建议我如何解决这种状态。
【问题讨论】:
-
您能添加一个条件逻辑的最小示例吗?例如:如果所有 A、B、C 字段都存在,则执行 X;如果A,B然后做Y等?还是如果 A,B,C 然后做 X,Y,Z?
-
您的问题相当混乱。您可以编辑它以添加更多细节吗?我注意到您已使用 AWS Step Functions 标记了您的问题 - 这是您尝试使用的服务吗?
-
嗨@fedonev,我已经用 Sample 更新了这个问题。
标签: amazon-web-services amazon-cloudformation aws-step-functions