Passaggio di parametri a un servizio API in Step Functions - AWS Step Functions

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à.

Passaggio di parametri a un servizio API in Step Functions

Utilizzate il Parameters campo in uno Task stato per controllare quali parametri vengono passati a un servizioAPI.

All'interno del Parameters campo, è necessario utilizzare la forma plurale dei parametri dell'array in un'APIazione. Ad esempio, se utilizzi il campo Filtro dell'DescribeSnapshotsAPIazione per l'integrazione con AmazonEC2, devi definire il campo comeFilters. Se non si utilizza la forma plurale, Step Functions restituisce il seguente errore:

The field Filter is not supported by Step Functions.

Passa dati statici JSON come parametri

È possibile includere un JSON oggetto direttamente nella definizione della macchina a stati da passare come parametro a una risorsa.

Ad esempio, per impostare il RetryStrategy parametro SubmitJob API per AWS Batch, è possibile includere quanto segue nei parametri.

"RetryStrategy": { "attempts": 5 }

Puoi anche passare più parametri con staticJSON. Come esempio più completo, i seguenti sono i Parameters campi Resource e della specifica di un'attività che viene pubblicata su un SNS argomento Amazon denominatomyTopic.

"Resource": "arn:aws:states:::sns:publish", "Parameters": { "TopicArn": "arn:aws:sns:us-east-2:123456789012:myTopic", "Message": "test message", "MessageAttributes": { "my attribute no 1": { "DataType": "String", "StringValue": "value of my attribute no 1" }, "my attribute no 2": { "DataType": "String", "StringValue": "value of my attribute no 2" } } },

Passa l'input dello stato come parametri utilizzando Paths

È possibile passare parti dell'input di stato come parametri utilizzando i percorsi. Un percorso è una stringa, che inizia con$, utilizzata per identificare i componenti all'interno JSON del testo. I percorsi Step Functions utilizzano la JsonPathsintassi.

Per specificare che un parametro utilizza un percorso, terminate il nome del parametro con.$. Ad esempio, se l'input di stato contiene testo all'interno di un nodo denominatomessage, è possibile passare quel testo come parametro utilizzando un percorso.

Considerate il seguente input di stato:

{ "comment": "A message in the state input", "input": { "message": "foo", "otherInfo": "bar" }, "data": "example" }

Per passare il valore del nodo denominato message come parametromyMessage, specificate la seguente sintassi:

"Parameters": {"myMessage.$": "$.input.message"},

Step Functions passa quindi il valore foo come parametro.

Per ulteriori informazioni sull'utilizzo dei parametri in Step Functions, vedere quanto segue:

Passa nodi di oggetti contestuali come parametri

Oltre a contenuti statici e nodi dall’input di stato, è possibile trasferire i nodi dall'oggetto contestuale come parametri. L'oggetto contesto è costituito da JSON dati dinamici che esistono durante l'esecuzione di una macchina a stati. Include informazioni sulla tua macchina di stato e l'esecuzione corrente. È possibile accedere all'oggetto contestuale utilizzando un percorso nel campo "Parameters" di una definizione dello stato.

Per ulteriori informazioni sull'oggetto contesto e su come accedere a tali dati da un campo "Parameters", consulta: