WebSocket-API in API Gateway erstellen
Sie können eine WebSocket-API in der API-Gateway-Konsole, mit dem AWS CLI-Befehl create-api
oder mit dem Befehl CreateApi
in einem AWS SDK erstellen. Das folgende Verfahren zeigt, wie Sie eine neue WebSocket-API erstellen.
WebSocket-APIs unterstützen nur TLS 1.2. Frühere TLS-Versionen werden nicht unterstützt.
Erstellen einer WebSocket-API mit AWS CLI-Befehlen
Zum Erstellen einer WebSocket-API mithilfe der AWS CLI muss wie im folgenden Beispiel der Befehl create-api
aufgerufen werden, mit dem eine API mit dem Routen-Auswahlausdruck $request.body.action
erstellt wird:
aws apigatewayv2 --region us-east-1 create-api --name "myWebSocketApi3" --protocol-type WEBSOCKET --route-selection-expression '$request.body.action'
Beispielausgabe:
{ "ApiKeySelectionExpression": "$request.header.x-api-key", "Name": "myWebSocketApi3", "CreatedDate": "2018-11-15T06:23:51Z", "ProtocolType": "WEBSOCKET", "RouteSelectionExpression": "'$request.body.action'", "ApiId": "aabbccddee" }
WebSocket-API über die API Gateway-Konsole erstellen
Sie können eine WebSocket-API in der Konsole erstellen, indem Sie das WebSocket-Protokoll auswählen und einen Namen für die API eingeben.
Sobald Sie die API erstellt haben, können Sie das für sie ausgewählte Protokoll nicht mehr ändern. Es ist nicht möglich, eine WebSocket-API in eine REST-API oder umgekehrt zu konvertieren.
So erstellen Sie eine WebSocket-API über die API Gateway-Konsole:
-
Melden Sie sich bei der API Gateway-Konsole an und wählen Sie Create API (API erstellen).
-
Wählen Sie unter WebSocket API die Option Create (Erstellen).
-
Gehen Sie unter Settings (Einstellungen) im Feld API name (API-Name) den Namen Ihrer API ein, z. B.
PetStore
. -
Geben Sie einen Route Selection Expression (Routen-Auswahlausdruck) für Ihre API ein, z. B.
$request.body.action
.Weitere Informationen zu Routen-Auswahlausdrücken finden Sie unter Routen-Auswahlausdrücke.
-
Machen Sie auf Wunsch unter Description (Beschreibung) Angaben zu Ihrer API.
-
Wählen Sie Create API (API erstellen) aus.