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.
Mit WebSockets Distributionen CloudFront verwenden
Amazon CloudFront unterstützt die Verwendung eines TCP basierten Protokolls WebSocket, das nützlich ist, wenn Sie langlebige bidirektionale Verbindungen zwischen Clients und Servern benötigen. Eine persistente Verbindung ist bei Echtzeit-Anwendungen oft erforderlich. Zu den Szenarien, die Sie verwenden könnten, WebSockets gehören Social-Chat-Plattformen, Arbeitsbereiche für die Online-Zusammenarbeit, Spiele für mehrere Spieler und Dienste, die Datenfeeds in Echtzeit bereitstellen, wie z. B. Finanzhandelsplattformen. Bei der WebSocket Vollduplex-Kommunikation können Daten über eine Verbindung in beide Richtungen fließen.
WebSocket Die Funktionalität wird automatisch aktiviert, sodass sie mit jeder Distribution funktioniert. Um sie zu verwenden WebSockets, konfigurieren Sie im Cache-Verhalten, das Ihrer Distribution zugewiesen ist, eine der folgenden Optionen:
Leiten Sie alle Header von Zuschaueranfragen an Ihren Ursprung weiter. (Sie können die Richtlinie für AllViewer verwaltete Anfragen mit Herkunft verwenden.)
Leiten Sie die Header
Sec-WebSocket-Key
und dieSec-WebSocket-Version
Anforderungsheader in Ihrer Richtlinie für ursprüngliche Anfragen ausdrücklich weiter.
Wie funktioniert das WebSocket Protokoll
Das WebSocket Protokoll ist ein unabhängiges, TCP basiertes Protokoll, mit dem Sie einen Teil des Mehraufwands — und möglicherweise eine erhöhte Latenz — von vermeiden können. HTTP
Um eine WebSocket Verbindung herzustellen, sendet der Client eine reguläre HTTP Anfrage, die die Upgrade-Semantik verwendet, um HTTP das Protokoll zu ändern. Der Server kann dann den Handshake abschließen. Die WebSocket Verbindung bleibt geöffnet und entweder der Client oder der Server können Datenframes aneinander senden, ohne jedes Mal neue Verbindungen herstellen zu müssen.
Standardmäßig verwendet das WebSocket Protokoll Port 80 für reguläre WebSocket Verbindungen und Port 443 für WebSocket Verbindungen überTLS/SSL. Die Optionen, die Sie für Ihre CloudFront Viewer-Protokollrichtlinien und wählen, Protokoll (nur benutzerdefinierte Ursprünge) gelten sowohl für WebSocket Verbindungen als auch für den HTTP Datenverkehr.
WebSocketAnforderungen
WebSocket Anfragen müssen RFC6455
Beispiel-Client-Anforderung:
GET /chat HTTP/1.1 Host: server.example.com Upgrade: websocket Connection: Upgrade Sec-WebSocket-Key: dGhlIHNhbXBsZSBub25jZQ== Origin: https://example.com Sec-WebSocket-Protocol: chat, superchat Sec-WebSocket-Version: 13
Beispiel-Server-Antwort:
HTTP/1.1 101 Switching Protocols Upgrade: websocket Connection: Upgrade Sec-WebSocket-Accept: s3pPLMBiTxaQ9kYGzzhZRbK+xOo= Sec-WebSocket-Protocol: chat
Wenn die WebSocket Verbindung durch den Client oder Server oder durch eine Netzwerkunterbrechung unterbrochen wird, wird erwartet, dass die Client-Anwendungen die Verbindung mit dem Server wieder aufnehmen.
Empfohlene Header WebSocket
-
Sec-WebSocket-Key
-
Sec-WebSocket-Version
-
Sec-WebSocket-Protocol
-
Sec-WebSocket-Accept
-
Sec-WebSocket-Extensions