Integrationsantwort in API Gateway einrichten - 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.

Integrationsantwort in API Gateway einrichten

Bei einer Nicht-Proxy-Integration müssen Sie mindestens eine Integrationsantwort einrichten und als Standardantwort festlegen, um das Ergebnis vom Backend an den Client zu übergeben. Sie können das Ergebnis unverändert übergeben oder die Integrationsantwortdaten bei unterschiedlichem Format in die Methodenantwortdaten umwandeln.

Bei einer Proxy-Integration leitet API Gateway die Backend-Ausgabe automatisch als HTTP-Antwort an den Client weiter. Sie legen weder Integrationsantwort noch Methodenantwort fest.

Führen Sie die folgenden erforderlichen und optionalen Schritte aus, um eine Integrationsantwort einzurichten:

  1. Geben Sie einen HTTP-Statuscode einer Methodenantwort an, der die Integrationsantwortdaten zugeordnet sind. Diese Information ist erforderlich.

  2. Definieren Sie einen regulären Ausdruck, um Backend-Ausgaben als Integrationsantwort auszuwählen. Wenn Sie hier keine Angaben machen, wird als Antwort die Standardantwort verwendet, die immer dann verwendet wird, wenn keine anderweitige Antwort konfiguriert ist.

  3. Deklarieren Sie gegebenenfalls Mappings bestehend aus Schlüssel-Wert-Paaren, um angegebene Integrationsantwortparameter den gegebenen Methodenantwortparametern zuzuordnen.

  4. Fügen Sie gegebenenfalls Inhalts-Mapping-Vorlagen hinzu, um vorhandene Integrationsantwortnutzlasten in angegebene Methodenantwortnutzlasten umzuwandeln.

  5. Legen Sie gegebenenfalls fest, wie Typumwandlungen für binäre Nutzlasten verarbeitet werden sollen.

Die Integrationsantwort ist eine HTTP-Antwort, die die Backend-Antwort kapselt. Bei HTTP-Endpunkten ist die Backend-Antwort eine HTTP-Antwort. Der Statuscode der Integrationsantwort kann den vom Backend zurückgegebenen Statuscode übernehmen. Der Inhalt der Integrationsantwort ist die vom Backend zurückgegebene Nutzlast. Bei einem Lambda-Endpunkt ist die Backend-Antwort die von der Lambda-Funktion zurückgegebene Ausgabe. Bei der Lambda-Integration wird die Ausgabe der Lambda-Funktion als 200 OK-Antwort zurückgegeben. Die Nutzlast kann das Ergebnis als JSON-Daten enthalten, einschließlich einer JSON-Zeichenfolge oder einem JSON-Objekt oder einer Fehlermeldung als JSON-Objekt. Sie können der Eigenschaft selectionPattern einen regulären Ausdruck zuweisen, um eine Fehlerantwort einer passenden HTTP-Fehlerantwort zuzuordnen. Weitere Informationen über die Fehlerantwort der Lambda-Funktion finden Sie unter Lambda-Fehler in API Gateway behandeln. Bei der Lambda-Proxy-Integration muss die Lambda-Funktion eine Ausgabe im folgenden Format zurückgeben:

{ statusCode: "...", // a valid HTTP status code headers: { custom-header: "..." // any API-specific custom header }, body: "...", // a JSON string. isBase64Encoded: true|false // for binary support }

Es besteht keine Notwendigkeit, die Antwort der Lambda-Funktion der richtigen HTTP-Antwort zuzuordnen.

Um das Ergebnis an den Client zurückzugeben, richten Sie die Integrationsantwort so ein, dass die Endpunktantwort unverändert an die entsprechende Methodenantwort übergeben wird. Alternativ können Sie die Endpunktantwortdaten auch den Methodenantwortdaten zuordnen. Es können folgende Antwortdaten zugeordnet werden: der Antwortstatuscode, die Parameter des Antwort-Headers und der Antwortinhalt. Wenn keine Methodenantwort für den zurückgegebenen Statuscode definiert ist, gibt API Gateway einen 500-Fehler zurück. Weitere Informationen finden Sie unter Verwendung einer Mapping-Vorlage zum Überschreiben der Anforderungs- und Antwortparameter und -Statuscodes einer API.