101

Switching Protocols

Oficiální stránky
Na žádost klienta se změní přenosový protokol.

Obecné vysvětlení stavového kódu 101

Představte si, že jste v restauraci a chcete si objednat nápoj. Přijde k vám číšník a zeptá se na vaši objednávku. Vy řeknete: "Chtěl bych sklenici vody, ale pokud máte čerstvý pomerančový džus, dal bych přednost tomu." Číšník vám odpoví: "Ne, ne, ne, ne, ne, ne, ne, ne, ne, ne, ne. Zde v podstatě dáváte číšníkovi dvě možnosti a dáváte mu najevo, že jste flexibilní. Podobně funguje požadavek na přepnutí protokolu.

Když webový prohlížeč nebo jiný klientský nástroj odešle požadavek na server, může klient navrhnout přepnutí na jiný komunikační protokol, protože se domnívá, že tento jiný protokol bude efektivnější nebo vhodnější. Například klient, který původně používal připojení HTTP, může navrhnout přepnutí na WebSockets, aby poskytl vždy otevřené připojení pro data v reálném čase.

Když server tento návrh přijme, odpoví stavovým kódem 101 Switching Protocols, aby klientovi sdělil: "Dobrá! Přepneme protokoly." Od tohoto okamžiku pokračuje komunikace mezi klientem a serverem prostřednictvím nového, dohodnutého protokolu.

Specifikace stavového kódu HTTP 101

Stavový kód 101 Switching Protocols označuje, že server rozumí požadavku klienta na změnu aplikačního protokolu používaného v tomto spojení, který byl zadán prostřednictvím pole záhlaví Upgrade, a je ochoten mu vyhovět. Server MUSÍ v odpovědi vygenerovat pole záhlaví Upgrade, které udává, na který protokol (protokoly) se přejde bezprostředně za prázdným řádkem, který ukončuje odpověď 101 Switching Protocols. Předpokládá se, že server bude souhlasit s přepnutím protokolů pouze tehdy, když to bude výhodné. Například přepnutí na novější verzi protokolu HTTP může být výhodné oproti starším verzím a přepnutí na synchronní protokol pracující v reálném čase může být výhodné při poskytování zdrojů, které takové funkce využívají.

Zdroj / Citace z: Stavový kód 101 Switching Protocols HTTP je specifikován v oddílu 6.2.2 oddílu RFC7231.

Jak vyhodit stavový kód 101 pomocí PHP?

Pro zobrazení stavového kódu HTTP 101 na webové stránce lze použít funkci PHP http_response_code. Syntaxe je následující: http_response_code(101) (PHP 5 >= 5.4.0, PHP 7, PHP 8)

Testování stavového kódu HTTP 101

Aby bylo možné zobrazit stavový kód HTTP (v tomto případě 101 Switching Protocols) a další informace na straně klienta, je třeba otevřít vývojovou konzolu pomocí klávesy F12. Poté přejděte na kartu "Síť". Nyní lze stránku otevřít, webová stránka (příklad index.php) by měla být viditelná na kartě sítě. Ta musí být vybrána a poté musí být vybrána sekce Herder. Uživatel pak uvidí následující výsledek:

Stavový kód 101 Switching Protocols
Přehled
URL: https://http-statuscode.com/errorCodeExample.php?code=101
Stav: 101 Switching Protocols
Tyto stránky: Network
IP adresa: XX.XX.XX.XX
Stavový kód 101 Switching Protocols

Kompatibilita stavového kódu 101 s prohlížeči

Chrome no data
Edge no data
Firefox no data
Opera no data
Safari no data
Chrome Android no data
Firefox for Android no data
Opera Android no data
Safari on iOS no data
Internet no data
WebView Android no data

Konstanty v programovacích jazycích

HttpStatusCode.SwitchingProtocols
http.StatusSwitchingProtocols
Response::HTTP_SWITCHING_PROTOCOLS
httplib.SWITCHING_PROTOCOLS
http.client.SWITCHING_PROTOCOLS
http.HTTPStatus.SWITCHING_PROTOCOLS
:switching_protocols
HttpServletResponse.SC_SWITCHING_PROTOCOLS 
Autor: Tony Brüser
Autor: Tony Brüser

Tony Brüser je nadšený webový vývojář se zálibou ve stavových kódech HTTP.

LinkedInGitHub