Le traduzioni sono generate tramite traduzione automatica. In caso di conflitto tra il contenuto di una traduzione e la versione originale in Inglese, quest'ultima prevarrà.
ItemsPath (JSONPathSolo mappa)
Gestione dello stato e trasformazione dei dati
Questa pagina fa riferimento a. JSONPath Step Functions ha recentemente aggiunto variabili e JSONata per gestire lo stato e trasformare i dati.
Scopri come passare dati con variabili e trasformare dati con JSONata.
Negli stati JSONPath basati, usa il ItemsPath
campo per selezionare un array all'interno di un JSON input fornito a uno Map
stato. Lo Map
stato ripete una serie di passaggi per ogni elemento dell'array. Per impostazione predefinita, lo Map
stato è ItemsPath
impostato su$
, che seleziona l'intero input. Se l'input dello Map
stato è un JSON array, esegue un'iterazione per ogni elemento dell'array, passando tale elemento all'iterazione come input.
Nota
È possibile utilizzare ItemsPath
nello stato della mappa distribuita solo se si utilizza un JSON input passato da uno stato precedente del flusso di lavoro.
È possibile utilizzare il ItemsPath
campo per specificare una posizione nell'input che punti all'JSONarray utilizzato per le iterazioni. Il valore di ItemsPath
deve essere un percorso di riferimento e tale percorso deve puntare alla JSON matrice. Ad esempio, considera l'input a uno stato Map
che include due matrici, come nell'esempio seguente.
{
"ThingsPiratesSay": [
{
"say": "Avast!"
},
{
"say": "Yar!"
},
{
"say": "Walk the Plank!"
}
],
"ThingsGiantsSay": [
{
"say": "Fee!"
},
{
"say": "Fi!"
},
{
"say": "Fo!"
},
{
"say": "Fum!"
}
]
}
In questo caso, è possibile specificare quale array utilizzare per le iterazioni di Map
stato selezionandolo conItemsPath
. La seguente definizione di macchina a stati specifica l'ThingsPiratesSay
array nell'input ItemsPath
utilizzando.IT, quindi esegue un'iterazione dello stato di SayWord
passaggio per ogni elemento dell'array. ThingsPiratesSay
{
"StartAt": "PiratesSay",
"States": {
"PiratesSay": {
"Type": "Map",
"ItemsPath": "$.ThingsPiratesSay",
"ItemProcessor": {
"StartAt": "SayWord",
"States": {
"SayWord": {
"Type": "Pass",
"End": true
}
}
},
"End": true
}
}
}
Durante l'elaborazione dell'input, lo Map
stato si applica ItemsPath
dopo. InputPath Funziona sull'ingresso effettivo allo stato dopo aver InputPath
filtrato l'input.
Per ulteriori informazioni sugli stati Map
, consulta quanto segue.