101

Switching Protocols

Ufficiale
Il protocollo di trasmissione viene modificato su richiesta del client.

Spiegazione generale del codice di stato 101

Immaginate di essere in un ristorante e di voler ordinare un drink. Il cameriere si avvicina e chiede la vostra ordinazione. Voi dite: "Vorrei un bicchiere d'acqua, ma se avete del succo d'arancia fresco, preferirei quello". In questo caso state dando al cameriere due opzioni e gli fate capire che siete flessibili. La richiesta di cambiare protocollo funziona in modo simile.

Quando un browser Web o un altro strumento client invia una richiesta a un server, il client può suggerire di passare a un protocollo di comunicazione diverso perché ritiene che quest'altro protocollo sia più efficiente o più adatto. Ad esempio, un client che originariamente utilizzava una connessione HTTP potrebbe suggerire di passare a WebSockets per fornire una connessione sempre aperta per i dati in tempo reale.

Quando il server accetta questo suggerimento, risponde con il codice di stato 101 Switching Protocols per dire al client: "Va bene! Cambiamo protocollo". Da questo momento in poi, la comunicazione tra il client e il server continua attraverso il nuovo protocollo concordato.

Specifica del codice di stato HTTP 101

Il codice di stato 101 Switching Protocols indica che il server comprende ed è disposto a soddisfare la richiesta del client, tramite il campo di intestazione Upgrade, di cambiare il protocollo applicativo utilizzato su questa connessione. Il server DEVE generare un campo di intestazione Upgrade nella risposta che indichi quale/i protocollo/i verrà cambiato subito dopo la riga vuota che termina la risposta 101 Switching Protocols. Si presume che il server accetti di cambiare protocollo solo quando è vantaggioso farlo. Ad esempio, il passaggio a una versione più recente di HTTP potrebbe essere vantaggioso rispetto alle versioni precedenti e il passaggio a un protocollo sincrono e in tempo reale potrebbe essere vantaggioso quando si forniscono risorse che utilizzano tali caratteristiche.

Fonte / Citazione da: Il codice di stato HTTP 101 Switching Protocols è specificato dalla sezione 6.2.2 di RFC7231.

Come lanciare un codice di stato 101 con PHP?

Per lanciare il codice di stato HTTP 101 su una pagina web, si può usare la funzione PHP http_response_code. La sintassi è la seguente: http_response_code(101) (PHP 5 >= 5.4.0, PHP 7, PHP 8)

Test del codice di stato HTTP 101

Per poter visualizzare il codice di stato HTTP (in questo caso 101 Switching Protocols) e altre informazioni sul lato client, è necessario aprire la console di sviluppo con F12. Quindi navigare nella scheda "Rete". Ora la pagina può essere aperta, il sito web (ad esempio index.php) dovrebbe essere visibile nella scheda Rete. Questo deve essere selezionato e poi deve essere selezionata la sezione Herder. L'utente vedrà quindi il seguente risultato:

Codice di stato 101 Switching Protocols
Panoramica
URL: https://http-statuscode.com/errorCodeExample.php?code=101
Stato: 101 Switching Protocols
Quelle: Network
Indirizzo IP: XX.XX.XX.XX
Codice di stato 101 Switching Protocols

Compatibilità con i browser del codice di stato 101

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

Costanti nei linguaggi di programmazione

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 
Autore: Tony Brüser
Autore: Tony Brüser

Tony Brüser è un entusiasta sviluppatore web con una predilezione per i codici di stato HTTP.

LinkedInGitHub