Auswählen eines API Gateway-API-Integration - Amazon API Gateway

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.

Auswählen eines API Gateway-API-Integration

Die Wahl des API-Integrationstyps erfolgt gemäß dem verwendeten Typs des Integrationsendpunkts und der Übergabemethode von Daten an und von dem Integrationsendpunkt. Für eine Lambda-Funktion können Sie die Lambda-Proxy-Integration oder die benutzerdefinierte Lambda-Integration verwenden. Für einen HTTP-Endpunkt können Sie die HTTP-Proxy-Integration oder die benutzerdefinierte HTTP-Integration verwenden. Für eine AWS-Service-Aktion steht nur die AWS-Integration ohne Proxy zur Verfügung. API Gateway unterstützt auch die Mock-Integration, bei der API Gateway als Integrationsendpunkt dient, um auf eine Methodenanfragen zu antworten.

Die benutzerdefinierte Lambda-Integration ist ein Sonderfall der AWS-Integration, bei der der Integrationsendpunkt der Aktion „function-invoking“ des Lambda-Service entspricht.

Programmgesteuert wählen Sie einen Integrationstyp durch Festlegen der Eigenschaft type für die Ressource Integration aus. Für die Lambda-Proxy-Integration ist der Wert AWS_PROXY. Für die benutzerdefinierte Lambda-Integration und alle anderen AWS-Integrationen lautet er AWS. Für die HTTP-Proxy-Integration und die HTTP-Integration ist der Wert HTTP_PROXY bzw. HTTP. Für die Pseudo-Integration ist der type-Wert MOCK.

Die Lambda-Proxy-Integration unterstützt eine vereinfachte Integrationseinrichtung mit einer einzigen Lambda-Funktion. Die Einrichtung ist einfach und kann um das Backend erweitert werden, ohne die vorhandene Einrichtung zu beeinträchtigen. Aus diesen Gründen wird sie für die Integration mit einer Lambda-Funktion dringend empfohlen.

Mit der benutzerdefinierten Lambda-Integration können Sie dagegen konfigurierte Mapping-Vorlagen für verschiedene Integrationsendpunkte mit vergleichbaren Anfragen für die Ein- und Ausgabedatenformate wiederverwenden. Die Einrichtung ist aufwändiger und wird für erweiterte Anwendungsszenarios empfohlen.

Ebenso ist die Integrationseinrichtung für die HTTP-Proxy-Integration optimiert und kann um das Backend erweitert werden, ohne die bestehende Einrichtung zu beeinträchtigen. Die benutzerdefinierte HTTP-Integration ist aufwändiger einzurichten, kann jedoch in Form von konfigurierten Mapping-Vorlagen für andere Integrationsendpunkte wiederverwendet werden.

In der folgenden Liste sind die unterstützten Integrationstypen zusammengefasst:

  • AWS: Mit diesem Integrationstyp kann eine API AWS-Service-Aktionen festlegen. Bei der AWS-Integration müssen Sie sowohl die Integrationsanforderung als auch die Integrationsantwort konfigurieren und die erforderlichen Daten-Mappings von der Methodenanforderung zur Integrationsanforderung sowie von der Integrationsantwort zur Methodenantwort einrichten.

  • AWS_PROXY: Mit diesem Integrationstyp lassen sich API-Methoden in die Lambda-Funktionsaufrufaktion integrieren. Die Einrichtung ist flexibel, vielseitig und optimiert. Die Integration stützt sich auf direkte Interaktionen zwischen dem Client und der integrierten Lambda-Funktion.

    Bei diesem, auch als Lambda-Proxy-Integration bezeichneten Integrationstyp, legen Sie weder die Integrationsanforderung noch die Integrationsantwort fest. API Gateway übergibt die eingehende Anfrage vom Client als Eingabe an die Backend-Lambda-Funktion. Die integrierte Lambda-Funktion übernimmt die Eingabe in diesem Format und analysiert die Eingabe aus allen verfügbaren Quellen, darunter Anfrage-Header, URL-Pfadvariablen, Abfragezeichenfolge-Parameter und anwendbarer Inhalt. Die Funktion gibt das Ergebnis in diesem Ausgabeformat zurück.

    Dies ist der bevorzugte Integrationstyp für den Aufruf einer Lambda-Funktion über API Gateway. Er ist nicht auf andere AWS-Service-Aktionen anwendbar, einschließlich Lambda-Aktionen mit Ausnahme der die function-invoking-Aktion.

  • HTTP: Dieser Integrationstyp stellt eine API als HTTP-Endpunkte im Backend dar. Bei diesem, auch als benutzerdefinierte HTTP-Integration bezeichneten HTTP-Integrationstyp, müssen Sie sowohl die Integrationsanforderung als auch die Integrationsantwort konfigurieren. Sie müssen die erforderlichen Daten-Mappings von der Methodenanforderung zur Integrationsanforderung und von der Integrationsantwort zur Methodenantwort einrichten.

  • HTTP_PROXY: Die HTTP-Proxy-Integration ermöglicht einem Client den Zugriff auf HTTP-Endpunkte des Backend über eine optimierte Integrationseinrichtung mit einer einzigen API-Methode. Sie legen keine Integrationsanforderung oder Integrationsantwort fest. Amazon API Gateway übergibt die eingehende Anfrage des Clients an den HTTP-Endpunkt und übergibt die ausgehende Antwort vom HTTP-Endpunkt an den Client.

  • MOCK: Bei diesem Integrationstyp kann API Gateway eine Antwort zurückgeben, ohne die Anfrage weiter an das Backend zu senden. Dies ist für API-Test hilfreich, da Sie so die Integrationseinrichtung testen können, ohne dass Ihnen für die Nutzung des Backends Kosten entstehen, oder gemeinsam eine API entwickeln können.

    Bei der gemeinsamen Entwicklung kann ein Team den Entwicklungsvorgang isolieren, indem es Simulationen von API-Komponenten anderer Teams über MOCK-Integrationen einrichtet. Dieser Integrationstyp wird auch verwendet, um CORS-Header zum Zulassen des CORS-Zugriffs durch die API-Methode zurückzugeben. Die API Gateway-Konsole integriert die OPTIONS-Methode zur Unterstützung von CORS sogar mit einer Mock-Integration. Gateway-Antworten sind weitere Beispiele für Pseudo-Integrationen.