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.
Anmerkung
Wir unterstützen jetzt hauptsächlich die APPSYNC _JS-Laufzeit und ihre Dokumentation. Bitte erwägen Sie, die APPSYNC _JS-Laufzeit und ihre Anleitungen hier zu verwenden.
Mit direkten Lambda-Resolvern können Sie die Verwendung von VTL Mapping-Vorlagen bei der Verwendung von Datenquellen umgehen. AWS Lambda AWS AppSync kann eine Standardnutzlast für Ihre Lambda-Funktion sowie eine Standardübersetzung aus der Antwort einer Lambda-Funktion auf einen GraphQL-Typ bereitstellen. Sie können wählen, ob Sie eine Anforderungsvorlage, eine Antwortvorlage oder beides bereitstellen möchten, und AWS AppSync werden diese entsprechend behandeln.
Weitere Informationen über die standardmäßige Anforderungsnutzlast und die damit AWS AppSync verbundene Antwortübersetzung finden Sie in der Direct Lambda Resolver-Referenz. Weitere Informationen zum Einrichten einer AWS Lambda Datenquelle und zum Einrichten einer IAM Vertrauensrichtlinie finden Sie unter Eine Datenquelle anhängen.
Direkte Lambda-Resolver konfigurieren
In den folgenden Abschnitten erfahren Sie, wie Sie Lambda-Datenquellen anhängen und Lambda-Resolver zu Ihren Feldern hinzufügen.
Fügen Sie eine Lambda-Datenquelle hinzu
Bevor Sie direkte Lambda-Resolver aktivieren können, müssen Sie eine Lambda-Datenquelle hinzufügen.
-
Melden Sie sich bei der an AWS Management Console und öffnen Sie die Konsole. AppSync
-
Wählen Sie im APIsDashboard Ihr GraphQL API aus.
-
Wählen Sie in der Seitenleiste Datenquellen aus.
-
-
Klicken Sie auf Create data source.
-
Geben Sie unter Datenquellenname einen Namen für Ihre Datenquelle ein, z. B.
myFunction
-
Wählen Sie als Datenquellentyp die Option AWS Lambda Funktion aus.
-
Wählen Sie für Region die entsprechende Region aus.
-
Wählen Sie für Function ARN die Lambda-Funktion aus der Drop-down-Liste aus. Sie können nach dem Funktionsnamen suchen oder den Namen ARN der Funktion, die Sie verwenden möchten, manuell eingeben.
-
Erstellen Sie eine neue IAM Rolle (empfohlen) oder wählen Sie eine vorhandene Rolle aus, die über die
lambda:invokeFunction
IAM entsprechende Berechtigung verfügt. Für bestehende Rollen ist eine Vertrauensrichtlinie erforderlich, wie im Abschnitt Anhängen einer Datenquelle erläutert.Im Folgenden finden Sie ein Beispiel IAM für eine Richtlinie, die über die erforderlichen Berechtigungen für die Ausführung von Vorgängen an der Ressource verfügt:
{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Action": [ "lambda:invokeFunction" ], "Resource": [ "arn:aws:lambda:us-west-2:123456789012:function:myFunction", "arn:aws:lambda:us-west-2:123456789012:function:myFunction:*" ] } ] }
-
-
Wählen Sie die Schaltfläche Erstellen aus.
Direkte Lambda-Resolver aktivieren
Nachdem Sie eine Lambda-Datenquelle erstellt und die entsprechende IAM Rolle eingerichtet haben, um die Funktion aufrufen AWS AppSync zu können, können Sie sie mit einer Resolver- oder Pipelinefunktion verknüpfen.
-
Melden Sie sich bei der an AWS Management Console und öffnen Sie die Konsole. AppSync
-
Wählen Sie im APIsDashboard Ihr GraphQL API aus.
-
Wählen Sie in der Seitenleiste Schema aus.
-
-
Wählen Sie im Resolver-Fenster ein Feld oder eine Operation aus und klicken Sie dann auf die Schaltfläche „Anhängen“.
-
Wählen Sie auf der Seite Neuen Resolver erstellen die Lambda-Funktion aus der Dropdownliste aus.
-
Um direkte Lambda-Resolver zu nutzen, stellen Sie sicher, dass Vorlagen für die Anfrage- und Antwortzuordnung im Abschnitt Zuordnungsvorlagen konfigurieren deaktiviert sind.
-
Wählen Sie die Schaltfläche „Resolver speichern“.
Wenn Sie Ihre Mapping-Vorlagen deaktivieren, treten mehrere zusätzliche Verhaltensweisen auf in AWS AppSync:
-
Durch das Deaktivieren einer Zuordnungsvorlage signalisieren Sie, AWS AppSync dass Sie die in der Direct Lambda-Resolver-Referenz angegebenen Standarddatenübersetzungen akzeptieren.
-
Wenn Sie die Antwortzuordnungsvorlage deaktivieren, wird das Ergebnis Ihres Lambda-Aufrufs je nach Version der Anforderungszuordnungsvorlage übersetzt oder ob die Anforderungszuordnungsvorlage ebenfalls deaktiviert ist.