Movatterモバイル変換


[0]ホーム

URL:


  1. Web
  2. HTTP
  3. Reference
  4. Headers
  5. Sec-WebSocket-Extensions

Dieser Inhalt wurde automatisch aus dem Englischen übersetzt, und kann Fehler enthalten.Erfahre mehr über dieses Experiment.

View in EnglishAlways switch to English

Sec-WebSocket-Extensions header

Baseline Widely available

This feature is well established and works across many devices and browser versions. It’s been available across browsers since ⁨Juli 2015⁩.

Der HTTPSec-WebSocket-ExtensionsRequest-Header undResponse-Header wird imWebSocket-Eröffnungshandshake verwendet, um eine Protokollerweiterung auszuhandeln, die vom Client und Server benutzt wird.

In einem Request gibt der Header eine oder mehrere Erweiterungen an, die die Webanwendung nutzen möchte, in der Reihenfolge der Präferenz. Diese können als mehrere Header hinzugefügt werden oder als kommagetrennte Werte zu einem einzelnen Header hinzugefügt werden. Jede Erweiterung kann auch ein oder mehrere Parameter haben — diese sind semikolongetrennte Werte, die nach der Erweiterung aufgeführt werden.

In einer Response kann der Header nur einmal erscheinen, wobei er die vom Server aus den Präferenzen des Clients ausgewählte Erweiterung angibt. Dieser Wert muss die erste Erweiterung sein, die der Server aus der im Request-Header bereitgestellten Liste unterstützt.

Der Request-Header wird vom Browser automatisch basierend auf seinen eigenen Fähigkeiten hinzugefügt und hängt nicht von Parametern ab, die an den Konstruktor übergeben werden, wenn derWebSocket erstellt wird.

Header-TypRequest-Header,Response-Header
Verbotener Request-HeaderJa (Sec--Präfix)

Syntax

http
Sec-WebSocket-Extensions: <extensions>

Direktiven

<extensions>

Eine kommagetrennte Liste von Erweiterungen, die angefordert werden sollen (oder denen der Server zustimmen soll, sie zu unterstützen). Diese werden häufig aus demIANA WebSocket-Erweiterungsnamen-Register ausgewählt (benutzerdefinierte Erweiterungen können ebenfalls verwendet werden). Erweiterungen, die Parameter haben, trennen diese mit Semikolons.

Beispiele

WebSocket-Eröffnungshandshake

Der folgende HTTP-Request zeigt das Eröffnungshandshake, bei dem ein Client diepermessage-deflate-Erweiterung (mitclient_max_window_bits-Parameter) und diebbf-usp-protocol-Erweiterung unterstützt.

http
GET /chat HTTP/1.1Host: example.com:8000Upgrade: websocketConnection: UpgradeSec-WebSocket-Key: dGhlIHNhbXBsZSBub25jZQ==Sec-WebSocket-Version: 13Sec-WebSocket-Extensions: permessage-deflate; client_max_window_bits, bbf-usp-protocol

Der folgende Request mit separaten Headers für jede Erweiterung ist gleichwertig:

http
GET /chat HTTP/1.1Host: example.com:8000Upgrade: websocketConnection: UpgradeSec-WebSocket-Key: dGhlIHNhbXBsZSBub25jZQ==Sec-WebSocket-Version: 13Sec-WebSocket-Extensions: permessage-deflate; client_max_window_bitsSec-WebSocket-Extensions: bbf-usp-protocol

Die folgende Response könnte von einem Server gesendet werden, um anzuzeigen, dass er diepermessage-deflate-Erweiterung unterstützen wird:

http
HTTP/1.1 101 Switching ProtocolsUpgrade: websocketConnection: UpgradeSec-WebSocket-Accept: s3pPLMBiTxaQ9kYGzzhZRbK+xOo=Sec-WebSocket-Extensions: permessage-deflate

Spezifikationen

Specification
The WebSocket Protocol
# section-11.3.2

Browser-Kompatibilität

Siehe auch

Help improve MDN

Learn how to contribute Diese Seite wurde automatisch aus dem Englischen übersetzt.

[8]ページ先頭

©2009-2025 Movatter.jp