ItemsPath - AWS Step Functions

翻訳は機械翻訳により提供されています。提供された翻訳内容と英語版の間で齟齬、不一致または矛盾がある場合、英語版が優先します。

ItemsPath

ItemsPathフィールドを使用して、Mapステートに提供された JSON 入力内の配列を選択します。Mapステートは、配列内の項目ごとに一連のステップを繰り返します。デフォルトでは、MapItemsPath状態はに設定され$、入力全体が選択されます。Mapステートへの入力が JSON 配列の場合、配列内の各項目に対して反復処理が実行され、その項目が入力として反復処理に渡されます。

注記

Distributed MapItemsPath ステートで使用できるのは、ワークフローの前のステートから渡された JSON 入力を使用する場合のみです。

ItemsPathこのフィールドを使用して、反復に使用される JSON 配列を指す入力内の位置を指定できます。ItemsPathの値は参照パスでなければならず、そのパスは JSON 配列を指している必要があります。例えば、次の例のように、Map 状態への入力に 2 つの配列が含まれている場合について考えてみます。

{ "ThingsPiratesSay": [ { "say": "Avast!" }, { "say": "Yar!" }, { "say": "Walk the Plank!" } ], "ThingsGiantsSay": [ { "say": "Fee!" }, { "say": "Fi!" }, { "say": "Fo!" }, { "say": "Fum!" } ] }

この場合、Mapステートの反復に使用する配列を選択することで指定できますItemsPath。次のステートマシン定義では、ItemsPath .ItThingsPiratesSay を使用して入力内の配列を指定し、SayWord配列内の各項目に対してパス状態の反復処理を実行します。ThingsPiratesSay

{ "StartAt": "PiratesSay", "States": { "PiratesSay": { "Type": "Map", "ItemsPath": "$.ThingsPiratesSay", "ItemProcessor": { "StartAt": "SayWord", "States": { "SayWord": { "Type": "Pass", "End": true } } }, "End": true } } }

入力を処理する場合、MapItemsPath状態は後に適用されますInputPathInputPath入力をフィルタリングした後の状態への有効な入力を処理します。

Map 状態の詳細については、以下を参照してください。