Ich benötige mein Amazon API Gateway REST-API, um Abfragezeichenfolgenparameter an eine Backend-Lambda-Funktion von AWS oder einen HTTP-Endpunkt zu übergeben.
Kurzbeschreibung
Um eine REST-API für die Übergabe von Abfragezeichenfolgenparametern an eine AWS Lambda-Funktion im Backend zu konfigurieren, verwenden Sie eine benutzerdefinierte Lambda-Integration.
Um Abfragezeichenfolgenparameter an einen HTTP-Endpunkt zu übergeben, verwenden Sie eine benutzerdefinierte HTTP-Integration.
Wichtig: Stelle sicher, dass du die Eingabedaten als Payload für die Integrationsanfrage bereitstellst. Es hat sich bewährt, für die Bereitstellung der Payload eine Zuordnungsvorlage zu verwenden. Weitere Informationen findest du unter Beispiele für Parameterzuordnungen für REST-APIs in API Gateway.
Lösung
Abfragezeichenfolgenparametern an eine Lambda-Funktion im Backend übergeben
Führe die folgenden Schritte aus:
- Öffne die API Gateway-Konsole und wähle dann die API aus.
- Wähle im Bereich Ressourcen die konfigurierte HTTP-Methode.
Hinweis: Wenn mehr als eine HTTP-Methode für die API konfiguriert ist, wiederhole diese Schritte für jede Methode.
- Wähle im Bereich Methodenausführung die Option Methodenanfrage und dann Bearbeiten.
- Erweitere die Drop-down-Liste der URL-Abfragezeichenfolgenparameter, wähle dann Abfragezeichenfolge hinzufügen.
- Gib im Feld Name pet ein.
- Aktiviere das Kontrollkästchen Erforderlich, und wähle dann Speichern.
- Wähle die Registerkarte Integrationsanforderung und dann Bearbeiten.
- Erweitere Zuordnungsvorlagen und wähle dann Zuordnungsvorlage hinzufügen.
- Gib für das Feld Inhaltstyp den Text application/json ein.
- Im Zuordnungsvorlageneditor kopiere das derzeitige Skript und ersetzen es durch folgenden Code:
{ "pet": "$input.params('pet')"
}
Hinweis: Weitere Informationen findest du in den Input-Variablen.
Wählen Speichern und dann API bereitstellen.
Um den neuen Endpunkt der API zu testen, führe folgenden curl-Befehl aus:
curl -X GET https://jp58lnf5vh.execute-api.us-west-2.amazonaws.com/dev/lambda-non-proxy?pet=dog
Wichtig: Stelle sicher, dass der curl-Befehl den Abfragezeichenfolgenparameter pet=dog hat.
Abfragezeichenfolgenparameter an einen HTTP-Endpunkt übergeben
Führe die folgenden Schritte aus:
- Öffne die API Gateway-Konsole und wähle dann die API aus.
- Wähle im Bereich Ressourcen die konfigurierte HTTP-Methode.
Hinweis: Wenn mehr als eine HTTP-Methode für die API konfiguriert ist, wiederhole diese Schritte für jede Methode.
- Wähle im Bereich Methodenausführung die Option Methodenanforderung, dann ** Bearbeiten**.
- Erweitere die Drop-down-Liste der URL-Abfragezeichenfolgenparameter und wähle dann Abfragezeichenfolge hinzufügen.
- Gib für das Feld Name den Typ ein und wähle dann Speichern.
- Wähle die Registerkarte Integrationsanforderung und dann Bearbeiten.
- Erweitere den Abschnitt URL-Abfragezeichenfolgenparameter.
- Gib für das Feld Name den Typ ein.
- Gib für das Feld Zugeordnet von method.request.querystring.type ein.
- Wähle Speichern und dann API bereitstellen.
- Um den neuen Endpunkt der API zu testen, führe folgenden curl-Befehl aus:
curl -X GET https://jp58lnf5vh.execute-api.us-west-2.amazonaws.com/dev/http-endpoint?pet=dog
Wichtig: Stellen Sie sicher, dass der curl-Befehl den Abfragezeichenfolgenparameter pet=dog hat.
Verwandte Informationen
Tutorial: Eine REST-API mit einer Lambda-Proxy-Integration erstellen
Tutorial: Eine REST-API mit einer Lambda-Nicht-Proxy-Integration erstellen
Tutorial: Eine REST-API mit einer HTTP-Proxyintegration erstellen
Tutorial: Eine REST-API mit einer HTTP-Nicht-Proxy-Integration erstellen