Die vorliegende Übersetzung wurde maschinell erstellt. Im Falle eines Konflikts oder eines Widerspruchs zwischen dieser übersetzten Fassung und der englischen Fassung (einschließlich infolge von Verzögerungen bei der Übersetzung) ist die englische Fassung maßgeblich.
ItemsPath (Karte)
Verwenden Sie das ItemsPath
Feld, um ein Array innerhalb einer JSON Eingabe auszuwählen, die für einen Map
Status bereitgestellt wurde. Der Map
Status wiederholt eine Reihe von Schritten für jedes Element im Array. Standardmäßig ist der Map
Status ItemsPath
auf festgelegt$
, wodurch die gesamte Eingabe ausgewählt wird. Wenn es sich bei der Eingabe für den Map
Status um ein JSON Array handelt, wird für jedes Element im Array eine Iteration ausgeführt, wobei dieses Element als Eingabe an die Iteration übergeben wird.
Anmerkung
Sie können ItemsPath
im Status „Verteilte Zuordnung“ nur dann verwenden, wenn Sie eine JSON Eingabe verwenden, die aus einem früheren Status im Workflow übergeben wurde.
Sie können das ItemsPath
Feld verwenden, um eine Position in der Eingabe anzugeben, die auf das JSON Array zeigt, das für Iterationen verwendet wird. Der Wert von ItemsPath
muss ein Referenzpfad sein, und dieser Pfad muss auf ein JSON Array zeigen. Erwägen Sie beispielsweise die Eingabe in einen Map
-Zustand, der zwei Arrays enthält, wie im folgenden Beispiel.
{
"ThingsPiratesSay": [
{
"say": "Avast!"
},
{
"say": "Yar!"
},
{
"say": "Walk the Plank!"
}
],
"ThingsGiantsSay": [
{
"say": "Fee!"
},
{
"say": "Fi!"
},
{
"say": "Fo!"
},
{
"say": "Fum!"
}
]
}
In diesem Fall könnten Sie angeben, welches Array für Map
Status-Iterationen verwendet werden soll, indem Sie es mit ItemsPath
auswählen. Die folgende State-Machine-Definition spezifiziert das ThingsPiratesSay
Array in der Eingabe mithilfe von ItemsPath
.IT. Anschließend wird für jedes Element im Array eine Iteration des SayWord
Pass-Status ausgeführt. ThingsPiratesSay
{
"StartAt": "PiratesSay",
"States": {
"PiratesSay": {
"Type": "Map",
"ItemsPath": "$.ThingsPiratesSay",
"ItemProcessor": {
"StartAt": "SayWord",
"States": {
"SayWord": {
"Type": "Pass",
"End": true
}
}
},
"End": true
}
}
}
Bei der Verarbeitung von Eingaben gilt der Map
Status ItemsPath
danach InputPath. Er arbeitet mit der tatsächlichen Eingabe in den Status, nachdem die Eingabe InputPath
gefiltert wurde.
Weitere Informationen zu Map
-Zuständen finden Sie im Folgenden: