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.
Tutorial: Erstellen Sie eine REST API mit einer HTTP Nicht-Proxy-Integration
In diesem Tutorial erstellen Sie mithilfe der Amazon API Gateway-Konsole eine API von Grund auf neu. Sie können sich die Konsole als API Designstudio vorstellen und sie verwenden, um die API Funktionen zu definieren, mit ihrem Verhalten zu experimentierenAPI, sie zu erstellen und schrittweise bereitzustellen. API
Themen
Erstellen Sie eine API mit HTTP benutzerdefinierter Integration
Dieser Abschnitt führt Sie durch die Schritte zum Erstellen von Ressourcen, zum Bereitstellen von Methoden für eine Ressource, zum Konfigurieren einer Methode zur Erzielung des gewünschten API Verhaltens sowie zum Testen und Bereitstellen vonAPI.
In diesem Schritt erstellen Sie eine leereAPI. In den folgenden Schritten erstellen Sie Ressourcen und Methoden, um mithilfe einer HTTP Nicht-Proxy-Integration eine Verbindung API zum http://petstore-demo-endpoint.execute-api.com/petstore/pets
Endpunkt herzustellen.
Um eine zu erstellen API
Melden Sie sich bei der API Gateway-Konsole unter https://console.aws.amazon.com/apigatewayan
. -
Wenn Sie API Gateway zum ersten Mal verwenden, wird eine Seite angezeigt, auf der Sie mit den Funktionen des Dienstes vertraut gemacht werden. Wählen Sie RESTAPIunter Build aus. Wenn das API Popup-Fenster „Beispiel erstellen“ angezeigt wird, wählen Sie „OK“.
Wenn Sie API Gateway nicht zum ersten Mal verwenden, wählen Sie Create API. Wählen Sie RESTAPIunter Build aus.
Geben Sie als APINamen ein
HTTPNonProxyAPI
.(Optional) Geben Sie unter Description (Beschreibung) eine Beschreibung ein.
Lassen Sie den APIEndpunkttyp auf Regional eingestellt.
Wählen Sie Erstellen ausAPI.
In der Resources-Struktur wird die Stammressource (/
) ohne Methoden angezeigt. In dieser Übung erstellen wir die API mit der HTTP benutzerdefinierten Integration der PetStore Website (http://petstore-demo-endpoint.execute-api. com/petstore/pets.) Zur Veranschaulichung erstellen wir eine /pets
Ressource als untergeordnetes Element des Stammverzeichnisses und stellen eine GET Methode für diese Ressource bereit, mit der ein Kunde eine Liste verfügbarer Pets-Artikel von der PetStore Website abrufen kann.
Erstellen einer /pets-Ressource
Wählen Sie Create Resource (Ressource erstellen) aus.
Die Proxy-Ressource bleibt ausgeschaltet.
Ressourcenpfad wird als
/
beibehalten.Geben Sie für Resource name (Ressourcenname)
pets
ein.Halten Sie CORS(Cross-Origin Resource Sharing) ausgeschaltet.
Wählen Sie Create Resource (Ressource erstellen) aus.
In diesem Schritt erstellen Sie eine GET
-Methode für die /pets-Ressource. Die GET
-Methode ist in die http://petstore-demo-endpoint.execute-api.com/petstore/pets
-Website integriert. Zu den weiteren Optionen für eine API Methode gehören die folgenden:
-
POST, wird hauptsächlich zur Erstellung untergeordneter Ressourcen verwendet.
-
PUT, wird hauptsächlich zur Aktualisierung vorhandener Ressourcen verwendet (und kann, obwohl dies nicht empfohlen wird, zum Erstellen untergeordneter Ressourcen verwendet werden).
-
DELETE – wird zum Löschen von Ressourcen eingesetzt.
-
PATCH – wird zum Aktualisieren von Ressourcen verwendet.
-
HEAD, wird hauptsächlich in Testszenarien verwendet. Es ist dasselbe wie die Darstellung der Ressource, gibt diese GET aber nicht zurück.
-
OPTIONS, das von Anrufern verwendet werden kann, um Informationen über die verfügbaren Kommunikationsoptionen für den Zieldienst abzurufen.
Für die Methode der Integrationsanfrage müssen Sie eine HTTPMethode wählen, die vom Backend unterstützt wird. Für HTTP
oder ist es sinnvollMock
integration
, dass die Methodenanforderung und die Integrationsanforderung dasselbe HTTP Verb verwenden. Bei anderen Integrationstypen verwendet die Methodenanforderung wahrscheinlich ein anderes HTTP Verb als die Integrationsanforderung. Um beispielsweise eine Lambda-Funktion aufzurufen, muss die Integrationsanforderung die Funktion aufrufen, wohingegen die Methodenanforderung je nach Logik der Lambda-Funktion jedes beliebige HTTP Verb verwenden kann. POST
So erstellen Sie eine GET
-Methode für die /pets-Ressource
Wählen Sie die /pets-Ressource aus.
Wählen Sie Methode erstellen aus.
Wählen Sie als Methodentyp die Option GET aus.
Wählen Sie als Integrationstyp die Option Integration aus. HTTP
Lassen Sie die HTTPProxyintegration ausgeschaltet.
Wählen Sie als HTTPMethode die Option aus GET.
Geben Sie für Endpunkt URL den Wert ein
http://petstore-demo-endpoint.execute-api.com/petstore/pets
.Auf der PetStore Website können Sie auf einer bestimmten Seite eine Liste mit
Pet
Objekten abrufen, die nach Tierart sortiert sind, z. B. „Hund“ oder „Katze“.Für Inhaltsbehandlung wählen Sie Passthrough aus.
Wählen Sie die Parameter für die URL Abfragezeichenfolge.
Die PetStore Website verwendet die Parameter
type
und diepage
Abfragezeichenfolge, um eine Eingabe zu akzeptieren. Sie fügen der Methodenanforderung Abfragezeichenfolgenparameter hinzu und ordnen sie den entsprechenden Abfragezeichenfolgenparametern der Integrationsanforderung zu.Gehen Sie wie folgt vor, um die Abfragezeichenfolgenparameter hinzuzufügen:
Wählen Sie Abfragezeichenfolge hinzufügen aus.
Für Name geben Sie
type
ein.Lassen Sie die Optionen Required (Obligatorisch) and Caching (Cache) deaktiviert.
Wiederholen Sie die obigen Schritte, um eine zusätzliche Abfragezeichenfolge namens
page
zu erstellen.Wählen Sie Methode erstellen aus.
Bei der Anforderungsübermittlung kann der Client nun einen Haustiertyp und eine Seitenzahl als Abfragezeichenfolge-Parameter senden. Diese Eingabeparameter müssen den Abfragezeichenfolgenparametern der Integration zugeordnet werden, um die Eingabewerte an unsere PetStore Website im Backend weiterzuleiten.
Zuordnen von Eingabeparametern zur Integrationsanforderung
Klicken Sie auf der Registerkarte Integrationsanfrage unter Einstellungen für Integrationsanfragen auf Bearbeiten.
Wählen Sie die Parameter für die URL Abfragezeichenfolge aus und gehen Sie dann wie folgt vor:
Klicken Sie auf Abfragezeichenfolge-Parameter hinzufügen.
Geben Sie unter Name
type
ein.Für Zugeordnet von geben Sie
method.request.querystring.type
ein.Caching bleibt ausgeschaltet.
Klicken Sie auf Abfragezeichenfolge-Parameter hinzufügen.
Geben Sie unter Name
page
ein.Für Zugeordnet von geben Sie
method.request.querystring.page
ein.Caching bleibt ausgeschaltet.
Wählen Sie Save (Speichern) aus.
Um das zu testen API
-
Wählen Sie die Registerkarte Test. Möglicherweise müssen Sie die rechte Pfeiltaste wählen, um die Registerkarte anzuzeigen.
-
Für Abfrage-Zeichenketten geben Sie
type=Dog&page=2
ein. Wählen Sie Test aus.
Das Ergebnis sollte wie folgt aussehen:
Jetzt, da der Test erfolgreich ist, können wir den bereitstellen, um ihn öffentlich API zugänglich zu machen.
Wählen Sie BereitstellenAPI aus.
Wählen Sie für Stufe die Option Neue Stufe aus.
Geben Sie für Stage name (Stufenname)
Prod
ein.(Optional) Geben Sie unter Description (Beschreibung) eine Beschreibung ein.
Wählen Sie Bereitstellen.
-
(Optional) Unter Stage-Details können Sie für Invoke das Kopiersymbol auswählenURL, um Ihren API eigenen Aufruf URL zu kopieren. Sie können dies mit Tools wie Postman
und c verwenden, um Ihre URL zu testen . API
Wenn Sie an verwenden, SDK um einen Client zu erstellen, können Sie die von der bereitgestellten Methoden aufrufen, SDK um die Anfrage zu signieren. Einzelheiten zur Implementierung finden Sie auf AWS SDK
Anmerkung
Wenn Änderungen an Ihrem vorgenommen werdenAPI, müssen Sie das erneut bereitstellen, API um die neuen oder aktualisierten Funktionen verfügbar zu machen, bevor Sie die Anfrage URL erneut aufrufen.
(Optionale) Parameter für die Zuordnungsanforderung
Ordnen Sie die Anforderungsparameter für ein Gateway zu API API
In diesem Tutorial wird gezeigt, wie Sie einen Pfadparameter für die API Methodenanforderung erstellen, um eine Element-ID anzugeben, ihn dem {id}
Pfadparameter in der Integrationsanforderung zuordnen und die Anfrage URL an den Endpunkt senden. {petId}
HTTP
Anmerkung
Eine Verwechslung von Groß- und Kleinschreibung kann im späteren Verlauf zu Fehlern führen.
Schritt 1: Erstellen von Ressourcen
In diesem Schritt erstellen Sie eine Ressource mit dem Pfadparameter {petId}.
Um die Ressource {petId} zu erstellen
-
Wählen Sie die /pets-Ressource aus und klicken Sie dann auf Ressource erstellen.
Die Proxy-Ressource bleibt ausgeschaltet.
Für Ressourcenpfad wählen Sie die Option/pets/aus.
Geben Sie für Resource name (Ressourcenname)
{petId}
ein.Verwenden Sie rundherum geschweifte Klammern (
{ }
),petId
sodass /pets/ {} angezeigt wird. petIdLassen Sie CORS(Cross Origin Resource Sharing) ausgeschaltet.
Wählen Sie Create Resource (Ressource erstellen) aus.
Schritt 2: Erstellen und Testen der Methoden
In diesem Schritt erstellen Sie eine GET
-Methode mit einem {petId}
-Pfadparameter.
Um die GET Methode einzurichten
Wählen Sie die Ressource/{petId} aus und wählen Sie dann Methode erstellen aus.
Wählen Sie als Methodentyp die Option GET aus.
Wählen Sie als Integrationstyp die Option HTTPIntegration aus.
Lassen Sie die HTTPProxyintegration ausgeschaltet.
Wählen Sie als HTTPMethode die Option aus GET.
Geben Sie für Endpoint URL Folgendes ein
http://petstore-demo-endpoint.execute-api.com/petstore/pets/{id}
Für Inhaltsbehandlung wählen Sie Passthrough aus.
Das Standard-Timeout bleibt aktiviert.
Wählen Sie Methode erstellen aus.
Jetzt ordnen Sie den soeben erstellten {petId}
Pfadparameter dem {id}
Pfadparameter am HTTP Endpunkt URL der Integrationsanforderung zu. Der HTTP Endpunkt URL warhttp://petstore-demo-endpoint.execute-api.com/petstore/pets/{id}
.
Zuordnen des {petId}
-Pfadparameters
-
Klicken Sie auf der Registerkarte Integrationsanfrage unter Einstellungen für Integrationsanfragen auf Bearbeiten.
Wählen Sie URLPfadparameter.
-
APIGateway erstellt einen Pfadparameter für die Integrationsanfrage mit dem Namen petId. Dieser Pfadparameter ist jedoch nicht gültig für den HTTP EndpunktURL, den Sie als Backend-Integration festgelegt haben. Der HTTP Endpunkt verwendet
{id}
ihn als Pfadparameter. Löschen Sie das Feld Name petIdund geben Sie einid
.Damit wird der Pfadparameter
petId
der Methodenanforderung dem Pfadparameterid
der Integrationsanforderung zugewiesen. Wählen Sie Save (Speichern) aus.
Jetzt können Sie die Methode testen.
So testen Sie die -Methode
-
Wählen Sie die Registerkarte Test. Möglicherweise müssen Sie die rechte Pfeiltaste wählen, um die Registerkarte anzuzeigen.
Geben Sie unter Pfad für petIdden Wert ein
4
.Wählen Sie Test aus.
Wenn diese Aktion erfolgreich ist, zeigt Antworttext Folgendes an:
{ "id": 4, "type": "bird", "price": 999.99 }
Schritt 3: Stellen Sie das bereit API
In diesem Schritt stellen Sie das bereit, API damit Sie es außerhalb der API Gateway-Konsole aufrufen können.
So stellen Sie die API bereit
Wählen Sie BereitstellenAPI aus.
Für Stufe wählen Sie die Option Prod aus.
(Optional) Geben Sie unter Description (Beschreibung) eine Beschreibung ein.
Wählen Sie Bereitstellen.
Schritt 4: Testen des API
In diesem Schritt verlassen Sie die API Gateway-Konsole und greifen mit Ihrem auf den HTTP Endpunkt API zu.
-
Klicken Sie im Hauptnavigationsbereich auf Stufe.
-
Wählen Sie unter Stage-Details das Kopiersymbol aus, um Ihren API Aufruf zu kopieren. URL
Sie sollte wie folgt aussehen:
https://
my-api-id
.execute-api.region-id
.amazonaws.com/prod -
Geben Sie dies URL in das Adressfeld eines neuen Browser-Tabs ein und fügen Sie es
/pets/4
an das an, URL bevor Sie Ihre Anfrage abschicken. -
Der Browser gibt Folgendes zurück:
{ "id": 4, "type": "bird", "price": 999.99 }
Nächste Schritte
Sie können Ihre weiter anpassen, API indem Sie die Anforderungsvalidierung aktivieren, Daten transformieren oder benutzerdefinierte Gateway-Antworten erstellen.
Weitere Möglichkeiten zur Anpassung Ihrer API finden Sie in den folgenden Tutorials:
-
Weitere Informationen zur Anforderungsvalidierung finden Sie unter Richten Sie die grundlegende Anforderungsvalidierung in API Gateway ein.
-
Weitere Informationen zur Umwandlung von Anforderungs- und Antwort-Nutzlasten finden Sie unter Richten Sie Datentransformationen in API Gateway ein.
-
Informationen zum Erstellen benutzerdefinierter Gateway-Antworten finden Sie unter Richten Sie mithilfe der Gateway-Konsole eine Gateway-Antwort für einen ein REST API API.