Methoden für REST-APIs in API Gateway - 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.

Methoden für REST-APIs in API Gateway

In API Gateway setzt sich eine API-Methode aus einer Methodenanfrage und eine Methodenantwort zusammen. Sie richten eine API-Methode ein, um zu definieren, was ein Client tun sollte oder tun muss, um eine Anforderung für den Zugriff auf den Service am Backend zu übermitteln und um die Antworten zu definieren, die der Client im Gegenzug erhält. Für die Eingabe können Sie Methodenanforderungs-Parameter oder eine anwendbare Nutzlast für den Client auswählen, um die erforderlichen oder optionalen Daten zur Laufzeit bereitzustellen. Für die Ausgabe bestimmen Sie den Statuscode der Methodenantwort, die Header und den geltenden Textkörper als Ziele denen Backend-Antwortdaten zugewiesen werden, bevor die Rückgabe an den Client erfolgt. Um den Client-Developer dabei zu unterstützen, das Verhalten und die Eingabe- und Ausgabeformate Ihrer API zu verstehen, können Sie Ihre API dokumentieren und ordnungsgemäße Fehlermeldungen für ungültige Anforderungen bereitstellen.

Eine API-Methodenanforderung ist eine HTTP-Anforderung. Um die Methodenanforderung einzurichten, konfigurieren Sie eine HTTP-Methode (oder einVerb), den Pfad zu einer API-Ressource, Header, geltende Parameter für Abfragezeichenfolgen. Außerdem konfigurieren Sie eine Nutzlast, wenn die HTTP-Methode POST, PUToder PATCH ist. Um beispielsweise mithilfe der PetStore Beispiel-API ein Haustier abzurufen, definieren Sie die API-Methodenanforderung von. GET /pets/{petId} Dabei {petId} handelt es sich um einen Pfadparameter, der zur Laufzeit eine Zahl annehmen kann.

GET /pets/1 Host: apigateway.us-east-1.amazonaws.com ...

Wenn der Client einen falschen Pfad angibt, zum Beispiel /pet/1 oder /pets/one anstatt /pets/1, wird eine Ausnahme ausgelöst.

Eine API-Methodenantwort ist eine HTTP-Antwort mit einem bestimmten Statuscode. Für eine Nicht-Proxy-Integration müssen Sie Methodenantworten einrichten, um die erforderlichen oder optionalen Ziele von Mappings anzugeben. Diese transformieren Integrationsantwort-Header oder einen Textkörper in verknüpfte Methodenantwort-Header oder einen Textkörper. Das Mapping kann so einfach wie eine identische Transformation sein, mit der die Header oder der Text unverändert mittels die Integration übergeben werden. Zum Beispiel zeigt die folgende 200-Methodenantwort ein Beispiel für die Weiterleitung einer unveränderten erfolgreichen Integrationsantwort.

200 OK Content-Type: application/json ... { "id": "1", "type": "dog", "price": "$249.99" }

In der Regel können Sie eine Methodenantwort entsprechend einer bestimmten Antwort vom Backend definieren. In der Regel handelt es sich dabei um alle 2XX-, 4XX- und 5XX-Antworten. Dies kann jedoch nicht praktikabel sein, da Sie häufig nicht alle Antworten, die ein Backend möglicherweise zurückgibt, im Vorfeld wissen können. In der Praxis können Sie eine Methodenantwort als Standard festlegen, um die unbekannten oder nicht zugewiesenen Antworten vom Backend zu verarbeiten. Es ist ein bewährtes Verfahren, die 500-Antwort als Standard festzulegen. In jedem Fall müssen Sie mindestens eine Methodenantwort für Nicht-Proxy-Integrationen einrichten. Andernfalls gibt API Gateway eine 500-Fehler-Antwort an den Client zurück, selbst wenn die Anfrage am Backend erfolgreich ist.

Zur Unterstützung eines stark typisierten SDKs, z. B. ein Java-SDK für Ihre API, sollten Sie das Datenmodell zur Eingabe für die Methodenanforderung und das Datenmodell zur Ausgabe der Methodenantwort definieren.

Voraussetzungen

Vor dem Einrichten einer API-Methode, überprüfen Sie Folgendes:

Anmerkung

Wenn Sie mit der REST-API-Konsole eine Methode erstellen, konfigurieren Sie sowohl die Integrationsanforderung als auch die Methodenanforderung. Weitere Informationen finden Sie unter API-Integrationsanfrage über die API Gateway-Konsole einrichten.