101
Switching Protocols
Ogólne wyjaśnienie kodu statusu 101
Wyobraź sobie, że jesteś w restauracji i chcesz zamówić drinka. Podchodzi do ciebie kelner i pyta o twoje zamówienie. Mówisz: "Chciałbym szklankę wody, ale jeśli masz świeży sok pomarańczowy, wolałbym to". Zasadniczo dajesz kelnerowi dwie opcje i dajesz mu znać, że jesteś elastyczny. Kiedy przeglądarka internetowa lub inne narzędzie klienckie wysyła żądanie do serwera, klient może zasugerować przejście na inny protokół komunikacyjny, ponieważ uważa, że ten inny protokół będzie bardziej wydajny lub lepiej dopasowany. Na przykład klient pierwotnie korzystający z połączenia HTTP może zasugerować przejście na WebSockets, aby zapewnić zawsze otwarte połączenie dla danych w czasie rzeczywistym.
Gdy serwer zaakceptuje tę sugestię, odpowiada kodem stanu 101 Switching Protocols, aby poinformować klienta: "W porządku! Przełączmy protokoły". Od tego momentu komunikacja między klientem a serwerem jest kontynuowana za pośrednictwem nowego, uzgodnionego protokołu.
Specyfikacja kodu statusu HTTP 101
Źródło / Cytat z: Kod statusu 101 Switching Protocols HTTP jest określony przez sekcję 6.2.2 z RFC7231.
Protokół HTTP
Jak wyrzucić kod statusu 101 za pomocą PHP?
Aby wyrzucić na stronę internetową kod statusu HTTP 101, można użyć funkcji PHP http_response_code. Składnia jest następująca: http_response_code(101) (PHP 5 >= 5.4.0, PHP 7, PHP 8)
Testowanie kodu 101 statusu HTTP
Aby móc wyświetlić kod statusu HTTP (w tym przypadku 101 Switching Protocols) i inne informacje po stronie klienta, należy otworzyć konsolę programistyczną za pomocą F12. Następnie należy przejść do zakładki "Network". Teraz można otworzyć stronę, w zakładce "Network" powinna być widoczna strona (przykładowy index.php). Należy ją zaznaczyć, a następnie wybrać sekcję Herder. Użytkownik zobaczy wtedy następujący wynik:
URL: https://http-statuscode.com/errorCodeExample.php?code=101
Status: 101 Switching Protocols
Te: Network
Adres IP: XX.XX.XX.XX
Zgodność kodu statusu 101 z przeglądarką
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 |
Stałe w językach programowania
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