在编写AWS Step Function流程定义时,需要注意itemsPath属性可能为空的情况。以下是一个示例代码:
{
"Comment": "例子",
"StartAt": "处理条目",
"States": {
"处理条目": {
"Type": "ForEach",
"InputPath": "$.items",
"OutputPath": "$.items",
"Iterator": {
"StartAt": "处理单个条目",
"States": {
"处理单个条目": {
"Type": "Task",
"Resource": "arn:aws:lambda:REGION:ACCOUNT_ID:function:FUNCTION_NAME",
"ResultPath": "$.itemResult"
},
"处理完成": {
"Type": "Succeed"
}
}
}
}
}
}
在上述代码中,“InputPath”: “$.items”用于指定处理的条目来源;若输入数据中没有items属性,AWS Step Function将跳过整个执行步骤。为了避免在处理所有条目之前跳过整个步骤,可以使用“Fail”状态检查items属性是否为空。