Bereitstellen von WebSocket-APIs in API Gateway - 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.

Bereitstellen von WebSocket-APIs in API Gateway

Nach der Erstellung Ihrer WebSocket-API müssen Sie sie bereitstellen, um sie für den Aufruf durch Ihre Benutzer verfügbar zu machen.

Zum Bereitstellen einer API erstellen Sie eine API-Bereitstellung und verknüpfen sie mit einer Stufe. Jede Stufe ist ein Snapshot der API und wird für Client-Apps zum Aufrufen verfügbar gemacht.

Wichtig

Eine API muss nach jeder Aktualisierung erneut bereitgestellt werden. Alle Änderungen außer an Stufeneinstellungen erfordern eine erneute Bereitstellung, einschließlich Änderungen an den folgenden Ressourcen:

  • Routen

  • Integrationen

  • Genehmiger

APIs sind standardmäßig auf 10 Stufen begrenzt. Wir empfehlen, bereits verwendete Stufen für Ihre Bereitstellungen wiederzuverwenden.

Um eine bereitgestellte WebSocket-API aufzurufen, sendet der Client eine Nachricht an die URL der API. Die URL wird anhand des Hostnamens und der Stufennummer der API bestimmt.

Anmerkung

API Gateway unterstützt Nutzlasten bis zu 128 KB mit einer maximalen Framegröße von 32 KB. Sie müssen Nachrichten, die 32 KB überschreiten, in mehrere Frames aufteilen, die jeweils 32 KB oder kleiner sind.

Unter Verwendung des Standarddomänennamens der API weist die URL (beispielsweise) einer WebSocket-API in einer bestimmten Stufe ({stageName}) das folgende Format auf:

wss://{api-id}.execute-api.{region}.amazonaws.com/{stageName}

Um die URL der WebSocket-API benutzerfreundlicher zu gestalten, können Sie einen benutzerdefinierten Domänennamen (z. B. api.example.com) erstellen, um damit den Standard-Hostnamen der API zu ersetzen. Der Konfigurationsvorgang ist bei REST-APIs identisch. Weitere Informationen finden Sie unter Benutzerdefinierter Domainname für öffentliches REST APIs in API Gateway.

Stufen ermöglichen eine robuste Versionskontrolle Ihrer API. Sie können beispielsweise eine API für eine test- und eine prod-Stufe bereitstellen und die test-Stufe als Test-Build und die prod-Stufe als stabilen Build verwenden. Nachdem die Aktualisierungen den Test bestanden haben, können Sie die test-Stufe auf prod hochstufen. Die Hochstufung kann durch die erneute Bereitstellung der API für die prod-Stufe erfolgen. Weitere Informationen zu Stufen finden Sie unter Einrichten einer Stufe für eine REST-API in API Gateway.

Erstellen einer WebSocket-API-Bereitstellung mithilfe der AWS CLI

Der Befehl create-deployment erstellt eine Bereitstellung:

aws apigatewayv2 --region us-east-1 create-deployment --api-id aabbccddee

Die Ausgabe sieht wie folgt aus:

{ "DeploymentId": "fedcba", "DeploymentStatus": "DEPLOYED", "CreatedDate": "2018-11-15T06:49:09Z" }

Die bereitgestellte API kann erst aufgerufen werden, wenn Sie die Bereitstellung einer Stufe zugeordnet haben. Sie können eine neue Stufe erstellen oder eine Stufe wiederverwenden, die Sie zuvor erstellt haben.

Der folgende create-stage-Befehl erstellt eine neue Stufe und verknüpft diese mit der Bereitstellung.

aws apigatewayv2 --region us-east-1 create-stage --api-id aabbccddee --deployment-id fedcba --stage-name test

Die Ausgabe sollte wie folgt aussehen:

{ "StageName": "test", "CreatedDate": "2018-11-15T06:50:28Z", "DeploymentId": "fedcba", "DefaultRouteSettings": { "MetricsEnabled": false, "ThrottlingBurstLimit": 5000, "DataTraceEnabled": false, "ThrottlingRateLimit": 10000.0 }, "LastUpdatedDate": "2018-11-15T06:50:28Z", "StageVariables": {}, "RouteSettings": {} }

Sie können auch eine vorhandene Stufe wiederverwenden, indem Sie die Eigenschaft deploymentId der Stufe mit der neu erstellten Bereitstellungs-ID (deployment-id) aktualisieren. Der folgende update-stage-Befehl aktualisiert die Bereitstellungs-ID der Stufe:

aws apigatewayv2 update-stage --region region \ --api-id api-id \ --stage-name stage-name \ --deployment-id deployment-id

Erstellen einer WebSocket-API-Bereitstellung mit der API Gateway-Konsole

So erstellen Sie mithilfe der API Gateway-Konsole eine Bereitstellung für eine WebSocket-API:

  1. Melden Sie sich bei der API Gateway-Konsole an und wählen Sie die API aus.

  2. Klicken Sie auf Deploy API.

  3. Wählen Sie die gewünschte Stufe aus der Dropdown-Liste aus oder geben Sie den Namen einer neuen Stufe ein.