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.
Übergeben von Parametern an einen Dienst API in Step Functions
Verwenden Sie das Parameters
Feld in einem Task
Status, um zu steuern, welche Parameter an einen Dienst übergeben werdenAPI.
Innerhalb des Parameters
Felds müssen Sie in einer API Aktion die Pluralform der Array-Parameter verwenden. Wenn Sie beispielsweise das Feld Filter der DescribeSnapshots
API Aktion für die Integration mit Amazon verwendenEC2, müssen Sie das Feld als definierenFilters
. Wenn Sie die Pluralform nicht verwenden, gibt Step Functions den folgenden Fehler zurück:
The field Filter is not supported by Step Functions.
Übergeben Sie statisch JSON als Parameter
Sie können ein JSON Objekt direkt in Ihre State-Machine-Definition aufnehmen, um es als Parameter an eine Ressource zu übergeben.
Um beispielsweise den RetryStrategy
Parameter für for festzulegen AWS Batch, könnten Sie Folgendes in Ihre Parameter aufnehmen. SubmitJob
API
"RetryStrategy": {
"attempts": 5
}
Sie können mit static auch mehrere Parameter übergebenJSON. Als vollständigeres Beispiel finden Sie im Folgenden die Parameters
Felder Resource
und der Spezifikation einer Aufgabe, die zu einem SNS Amazon-Thema veröffentlicht, mit dem Namen
.myTopic
"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"
}
}
},
Übergeben Sie Statuseingaben mithilfe von Paths als Parameter
Mithilfe von Pfaden können Sie Teile der Statuseingabe als Parameter übergeben. Ein Pfad ist eine Zeichenfolge, die mit beginnt und verwendet wird$
, um Komponenten innerhalb von JSON Text zu identifizieren. Step Functions Functions-Pfade verwenden JsonPath
Um anzugeben, dass ein Parameter einen Pfad verwendet, beenden Sie den Parameternamen mit.$
. Wenn Ihre Statuseingabe beispielsweise Text innerhalb eines Knotens mit dem Namen enthältmessage
, können Sie diesen Text mithilfe eines Pfads als Parameter übergeben.
Stellen Sie sich die folgende Statuseingabe vor:
{
"comment": "A message in the state input",
"input": {
"message": "foo",
"otherInfo": "bar"
},
"data": "example"
}
Um den Wert des message
als Parameter benannten Knotens zu übergeben, geben Sie die folgende Syntax an:
"Parameters": {"myMessage.$": "$.input.message"},
Step Functions übergibt den Wert dann foo
als Parameter.
Weitere Informationen zur Verwendung von Parametern in Step Functions finden Sie im Folgenden:
Übergeben von Kontext-Knoten als Parameter
Zusätzlich zu statischem Inhalt und Knoten aus der Zustandseingabe können Sie Knoten aus dem Kontext-Objekt als Parameter übergeben. Das Kontextobjekt besteht aus dynamischen JSON Daten, die während der Ausführung einer Zustandsmaschine vorhanden sind. Es enthält unter anderem Informationen über Ihren Zustandsautomaten und die aktuelle Ausführung. Sie können auf das Kontext-Objekt mithilfe eines Pfads im "Parameters"
-Feld der Definition eines Zustands zugreifen.
Weitere Informationen über das Kontext-Objekt sowie den Zugriff auf die Daten aus einem "Parameters"
-Feld finden Sie unter: