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.
Grundlegendes zu Zuweisungsvorlagen
In API Gateway kann die Methodenanforderung oder -antwort einer API eine Nutzlast in einem anderen Format als die Integrationsanfrage oder -antwort annehmen.
Sie können Ihre Daten folgendermaßen transformieren:
Anpassung der Nutzlast an ein API-spezifiziertes Format
Überschreiben der Anforderungs- und Antwortparameter und Statuscodes einer API-Anfrage
Rückgabe der vom Client ausgewählten Antwort-Header
Ordnen Sie Pfadparameter, Abfragezeichenfolgeparameter oder Header-Parameter in der Methodenanforderung von HTTP-Proxy oder - AWS-Service Proxy zu.
Wählen Sie aus, welche Daten mithilfe der Integration mit gesendet werden sollen AWS-Services, z. B. Amazon-DynamoDB- oder Lambda-Funktionen oder HTTP-Endpunkte.
Sie können Zuweisungsvorlagen verwenden, um Ihre Daten zu transformieren. Eine Zuweisungsvorlage ist ein in Velocity Template Language (VTL)
Das folgende Beispiel zeigt Eingabedaten, eine Zuweisungsvorlage und Ausgabedaten für eine Transformation der PetStore Daten
Eingabedaten |
|
Zuweisungsvorlage |
|
Ausgabedaten |
|
Das folgende Diagramm zeigt Details dieser Zuweisungsvorlage.
Die Variable
$inputRoot
stellt in den ursprünglichen JSON-Daten aus dem vorherigen Abschnitt das Stammobjekt dar. Richtlinien beginnen mit dem#
-Symbol.Eine
foreach
-Schleife durchläuft jedes Objekt in den ursprünglichen JSON-Daten.Die Beschreibung ist eine Verkettung der Pet-
id
und destype
der ursprünglichen JSON-Daten.askingPrice
ist derprice
aus den ursprünglichen JSON-Daten.
1 #set($inputRoot = $input.path('$')) 2 [ 3 #foreach($elem in $inputRoot) 4 { 5 "description" : "Item $elem.id is a $elem.type.", 6 "askingPrice" : $elem.price 7 }#if($foreach.hasNext),#end 8 #end 9 ]
In dieser Zuweisungsvorlage gilt:
-
Die Variable
$inputRoot
in Zeile 1 stellt das Stammobjekt in den ursprünglichen JSON-Daten aus dem vorherigen Abschnitt dar. Richtlinien beginnen mit dem#
-Symbol. -
In Zeile 3 durchläuft eine
foreach
-Schleife jedes Objekt in den ursprünglichen JSON-Daten. -
In Zeile 5 ist die
description
eine Verkettung der Pet-id
und der ursprünglichentype
-JSON-Daten. -
In Zeile 6 ist
askingPrice
derprice
aus den ursprünglichen JSON-Daten.
Weitere Informationen zur Velocity Template Language finden Sie in der Apache Velocity – VTL-Reference
Die Mapping-Vorlage geht davon aus, dass die zugrundeliegenden Daten zu einem JSON-Objekt gehören. Es ist nicht erforderlich, ein Modell für die Daten zu definieren. Ein Modell für die Ausgabedaten ermöglicht es jedoch, vorherige Daten als sprachspezifisches Objekt zurückzugeben. Weitere Informationen finden Sie unter Datenmodelle.
Komplexe Zuweisungsvorlagen
Sie können auch kompliziertere Zuordnungsvorlagen erstellen. Das folgende Beispiel zeigt die Verkettung von Referenzen und einen Grenzwert von 100, um festzustellen, ob Sie sich ein Haustier leisten können.
Eingabedaten |
|
Zuweisungsvorlage |
|
Ausgabedaten |
|
Ein komplizierteres Modell finden Sie im Beispiel-Fotoalbum Beispiel zu Fotos.