101
Switching Protocols
Общо обяснение на код на състоянието 101
Представете си, че сте в ресторант и искате да си поръчате напитка. Сервитьорът се приближава до вас и ви пита за поръчката. Вие казвате: "Бих искал чаша вода, но ако имате пресен портокалов сок, бих предпочел него". Тук по същество давате на сервитьора две възможности и му съобщавате, че сте гъвкави. Искането за смяна на протокол работи по подобен начин.
Когато уеб браузър или друг клиентски инструмент изпраща заявка към сървър, клиентът може да предложи преминаване към друг протокол за комуникация, защото смята, че този друг протокол ще бъде по-ефективен или по-подходящ. Например клиент, който първоначално е използвал HTTP връзка, може да предложи да се премине към WebSockets, за да се осигури винаги отворена връзка за данни в реално време.
Когато сървърът приеме това предложение, той отговаря с код на състоянието 101 Switching Protocols, за да каже на клиента: "Добре! Да превключим протоколите." От този момент нататък комуникацията между клиента и сървъра продължава чрез новия, договорен протокол.
Спецификация на HTTP код на състоянието 101
Източник / Цитат от: Кодът на състоянието 101 Switching Protocols на HTTP е определен в раздел 6.2.2 на RFC7231.
Протокол HTTP
Как да изхвърлим код на състоянието 101 с PHP?
За изхвърляне на HTTP статус код 101 на уеб страница може да се използва функцията http_response_code на PHP. Синтаксисът е следният: http_response_code(101) (PHP 5 >= 5.4.0, PHP 7, PHP 8)
Тестване на код 101 на състоянието HTTP
За да можете да показвате кода на състоянието на HTTP (в този случай 101 Switching Protocols) и друга информация от страна на клиента, конзолата за разработка трябва да се отвори с F12. След това преминете към раздела "Мрежа". Сега страницата може да бъде отворена, като уебсайтът (пример index.php) трябва да се вижда в раздела "Мрежа". Той трябва да бъде избран и след това трябва да се избере разделът Herder. След това потребителят ще види следния резултат:
URL: https://http-statuscode.com/errorCodeExample.php?code=101
Статус: 101 Switching Protocols
Тези: Network
IP адрес: XX.XX.XX.XX
Съвместимост на кода на състоянието 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 |
Константи в езиците за програмиране
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