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 verkörpert eine API Methode eine Methodenanforderung und eine Methodenantwort. Sie richten eine API Methode ein, um zu definieren, was ein Client tun soll oder muss, um eine Anfrage für den Zugriff auf den Dienst im Backend einzureichen, 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. Damit der Entwickler des Kunden das Verhalten und die Eingabe- und Ausgabeformate Ihrer Anfragen verstehtAPI, können Sie Ihre Anfragen dokumentieren API und entsprechende Fehlermeldungen für ungültige Anfragen bereitstellen.
Eine API Methodenanfrage ist eine HTTP Anfrage. Um die Methodenanforderung einzurichten, konfigurieren Sie eine HTTP Methode (oder ein Verb), den Pfad zu einer API Ressource, Header und die entsprechenden Abfragezeichenfolgenparameter. Sie konfigurieren auch eine Payload, wenn die HTTP Methode POST
PUT
, oder ist. PATCH
Um beispielsweise anhand des PetStore Beispiels ein Haustier abzurufenAPI, definieren Sie die API Methodenanforderung vonGET
/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 Transformation200
-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-Fehlerantwort an den Client zurück, auch wenn die Anfrage im Backend erfolgreich ist.
Um eine stark typisierte SDK Methode wie Java für Sie zu unterstützenSDK, sollten Sie das Datenmodell für die Eingabe für die Methodenanforderung und das Datenmodell für die Ausgabe der Methodenantwort definieren. API
Voraussetzungen
Bevor Sie eine API Methode einrichten, überprüfen Sie Folgendes:
-
Die Methode muss in API Gateway verfügbar sein. Folgen Sie den Anweisungen in Tutorial: Erstellen Sie eine REST API mit einer HTTP Nicht-Proxy-Integration.
-
Wenn Sie möchten, dass die Methode mit einer Lambda-Funktion kommuniziert, müssen Sie die Lambda-Aufrufrolle und die Lambda-Ausführungsrolle bereits in erstellt haben. IAM Sie müssen außerdem die Lambda-Funktion erstellt haben, mit der Ihre Methode in AWS Lambda kommuniziert. Befolgen Sie zum Erstellen der Rollen und der Funktion die Anweisungen in Lambda-Funktion für die Nicht-Proxy-Integration von Lambda erstellen unter Wählen Sie ein AWS Lambda Integrations-Tutorial.
-
Wenn Sie möchten, dass die Methode mit einer HTTP oder einer HTTP Proxyintegration kommuniziert, müssen Sie den HTTP Endpunkt, URL mit dem Ihre Methode kommuniziert, bereits erstellt haben und Zugriff darauf haben.
-
Stellen Sie sicher, dass Ihre Zertifikate für HTTP und HTTP Proxyendpunkte von API Gateway unterstützt werden. Weitere Informationen finden Sie unter APIGateway-unterstützte Zertifizierungsstellen für HTTP und HTTP Proxyintegrationen in Gateway API.
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.