In einem API-Gateway bereitgestellte API aufrufen
Erfahren Sie, wie Sie eine API aufrufen, die Sie zuvor mit dem API-Gateway-Service in einem API-Gateway bereitgestellt haben.
Nachdem Sie eine API in einem API-Gateway bereitgestellt haben, können Sie die bereitgestellte API aufrufen.
Wenn Sie den in diesem Thema beschriebenen curl-Befehl assemblieren, können Sie schnell den Wert der Zeichenfolge https://<gateway-hostname>/<deployment-path-prefix>
als Endpunkt des API-Deployments abrufen. Verwenden Sie dazu:
- Die Konsole. Gehen Sie zur Seite Gatewaydetails, und wählen Sie Kopieren neben dem Endpunkt des API-Deployment.
- die API. Verwenden Sie den GetDeployments-Vorgang.
curl verwenden
So rufen Sie eine in einem API-Gateway bereitgestellte API auf:
-
Öffnen Sie ein Terminalfenster, und geben Sie einen cURL-Befehl ähnlich dem folgenden ein, der für die bereitgestellte API geeignet ist:
curl -k -X <method> https://<gateway-hostname>/<deployment-path-prefix>/<api-route-path>
Dabei gilt:
<method>
ist eine gültige Methode für die bereitgestellte API (z.B. GET, PUT).-
<gateway-hostname>
ist ein automatisch generierter Domainname im Format<gateway-identifier>.apigateway.<region-identifier>.oci.customer-oci.com
. Dabei gilt:<gateway-identifier>
ist die Zeichenfolge, die das API-Gateway identifiziert. Beispiel:lak...sjd
(abgekürzt für Lesbarkeit).-
<region-identifier>
ist die ID der Region, in der das API-Gateway erstellt wurde. Siehe Verfügbarkeit nach Region.
Beispiel:
lak...sjd.apigateway.us-phoenix-1.oci.customer-oci.com
.Verwenden Sie die Konsole oder die API, um den Domainnamen zu ermitteln, der als Wert für
<gateway-hostname>
verwendet werden soll. -
/<deployment-path-prefix>
ist das Präfix, das dem Pfad jeder Route im API-Deployment hinzugefügt wird. Beachten Sie, dass das Deployment-Pfadpräfix in der Anforderung:- mehrere Schrägstriche enthalten kann (sofern diese nicht aufeinander folgen)
- alphanumerische Zeichen in Großbuchstaben und Kleinbuchstaben enthalten kann
- die folgenden Sonderzeichen enthalten kann:
$ - _ . + ! * ' ( ) , % ; : @ & =
- keine Parameter und Platzhalter enthalten darf
- genau mit dem für das API-Deployment definierten Deployment-Pfadpräfix übereinstimmen muss (siehe API durch das Erstellen eines API-Deployments in einem API-Gateway bereitstellen)
Verwenden Sie die Konsole oder die API, um das Pfadpräfix zu ermitteln, das als Wert für
<deployment-path-prefix>
verwendet werden soll. -
/<api-route-path>
ist der Pfad zu einer bestimmten Route, die in der API-Deployment-Spezifikation definiert ist. Beachten Sie, dass der Routenpfad in der Anforderung:- relativ zum Deployment-Pfadpräfix ist
- ein einzelner Schrägstrich sein kann
- mehrere Schrägstriche enthalten (sofern diese nicht aufeinander folgen) und mit einem Schrägstrich enden kann
- alphanumerische Zeichen in Großbuchstaben und Kleinbuchstaben enthalten kann
- die folgenden Sonderzeichen enthalten kann:
$ - _ . + ! * ' ( ) , % ; : @ & =
- nicht genau mit dem in der API-Deployment-Spezifikation definierten Routenpfad übereinstimmen muss, sofern der Routenpfad in der API-Deployment-Spezifikation einen Pfadparameter mit oder ohne Platzhalter enthält (siehe Pfadparameter und Platzhalter zu Routenpfaden hinzufügen)
Verwenden Sie die Konsole oder die API, um den Pfad zu ermitteln, der als Wert für
<api-route-path>
verwendet werden soll.
Beispiel:
curl -k -X GET https://lak...sjd.apigateway.us-phoenix-1.oci.customer-oci.com/marketing/hello/
Wenn das API-Gateway-Backend eine serverlose Funktion ist, die Parameter akzeptiert, nehmen Sie diese Parameter in den Aufruf an die API auf. Beispiel:
curl -k -X POST https://lak...sjd.apigateway.us-phoenix-1.oci.customer-oci.com/marketing/hello/ -d "name=john"