Sec-WebSocket-Version
Der HTTP-Anforderungs- und Antwortheader Sec-WebSocket-Version wird im WebSocket-Eröffnungs-Handschlag verwendet, um das vom Client unterstützte WebSocket-Protokoll und die vom Server unterstützten Protokollversionen anzuzeigen, falls es die in der Anfrage angegebene Version nicht unterstützt.
Der Header kann nur einmal in einer Anfrage erscheinen und gibt die WebSocket-Version an, die die Webanwendung verwendet. Die aktuelle Version des Protokolls zum Zeitpunkt des Schreibens ist 13. Der Header wird von Benutzeragenten automatisch zu Anfragen hinzugefügt, wenn eine WebSocket
-Verbindung hergestellt wird.
Der Server nutzt die Version, um festzustellen, ob er das Protokoll verstehen kann. Wenn der Server die Version nicht unterstützt oder irgendein Header im Handschlag nicht verstanden wird oder einen falschen Wert hat, sollte der Server eine Antwort mit dem Status 400 Bad Request
senden und die Verbindung sofort schließen. Er sollte auch Sec-WebSocket-Version
in der 400
-Antwort einfügen, wobei die Versionen aufgelistet werden, die er unterstützt. Die Versionen können in einzelnen Headern oder als durch Komma getrennte Werte in einem einzigen Header angegeben werden.
Der Header sollte nicht in Antworten gesendet werden, wenn der Server die vom Client angegebenen Versionen versteht.
Headertyp | Antwortheader |
---|---|
Verbotener Headername | ja |
Syntax
Anforderung
Sec-WebSocket-Version: <version>
Antwort (nur bei Fehler):
Sec-WebSocket-Version: <server-supported-versions>
Direktiven
<version>
-
Die WebSocket-Protokollversion, die der Client bei der Kommunikation mit dem Server verwenden möchte. Diese Zahl sollte die aktuellste in der IANA WebSocket Version Number Registry gelistete Version sein. Die aktuellste endgültige Version des WebSocket-Protokolls ist Version 13.
<server-supported-versions>
-
Bei einem Fehler eine durch Komma getrennte Liste der vom Server unterstützen WebSocket-Protokollversionen. Der Header wird nicht in Antworten gesendet, wenn
<version>
unterstützt wird.
Beispiele
Die vom Client unterstützte Version wird in der ursprünglichen WebSocket
-Handschlagsanfrage angegeben. Für das aktuelle Protokoll ist die Version "13", wie unten gezeigt.
GET /chat HTTP/1.1
Host: example.com:8000
Upgrade: websocket
Connection: Upgrade
Sec-WebSocket-Key: dGhlIHNhbXBsZSBub25jZQ==
Sec-WebSocket-Version: 13
Wenn der Server Version 13 des Protokolls unterstützt, erscheint Sec-WebSocket-Version
nicht in der Antwort.
Spezifikationen
Specification |
---|
Unknown specification # section-11.3.5 |
Browser-Kompatibilität
BCD tables only load in the browser
Siehe auch
Sec-WebSocket-Accept
Sec-WebSocket-Key
Sec-WebSocket-Protocol
Sec-WebSocket-Extensions
- Der WebSocket-Handschlag in Writing WebSocket servers