http狀態碼101概述

2021-09-29 12:46:34 字數 1734 閱讀 5591

簡述:切換協議。

*** switching protocols 切換協議。伺服器根據客戶端的請求切換協議。

伺服器已經理解了客戶端的請求,並將通過upgrade 訊息頭通知客戶端採用不同的協議來完成這個請求。

在傳送完這個響應最後的空行後,伺服器將會切換到在upgrade 訊息頭中定義的那些協議。

首先我們來看個典型的 websocket 握手

熟悉http的童鞋可能發現了,這段類似http協議的握手請求中,多了幾個東西。我會順便講解下作用。

這個就是websocket的核心了,告訴 apache 、 nginx 等伺服器:注意啦,我發起的是websocket協議,快點幫我找到對應的助理處理~不是那個老土的http。

首先, sec-websocket-key 是乙個 base64 encode 的值,這個是瀏覽器隨機生成的,告訴伺服器:泥煤,不要忽悠窩,我要驗證尼是不是真的是websocket助理。

然後, sec_websocket-protocol 是乙個使用者定義的字串,用來區分同url下,不同的服務所需要的協議。簡單理解:今晚我要服務a,別搞錯啦~

最後, sec-websocket-version 是告訴伺服器所使用的 websocket draft (協議版本),在最初的時候,websocket協議還在 draft 階段,各種奇奇怪怪的協議都有,而且還有很多期奇奇怪怪不同的東西,什麼firefox和chrome用的不是乙個版本之類的,當初websocket協議太多可是乙個大難題。。不過現在還好,已經定下來啦大家都使用的乙個東西 脫水: 服務員,我要的是13歲的噢→_→

然後伺服器會返回下列東西,表示已經接受到請求, 成功建立websocket啦!

sec-websocket-protocol: chat這裡開始就是http最後負責的區域了,告訴客戶,我已經成功切換協議啦~

upgrade: websocket

connection: upgrade

依然是固定的,告訴客戶端即將公升級的是 websocket 協議,而不是mozillasocket,lurnarsocket或者****socket。

然後, sec-websocket-accept 這個則是經過伺服器確認,並且加密過後的 sec-websocket-key 。 伺服器:好啦好啦,知道啦,給你看我的id card來證明行了吧。。

後面的, sec-websocket-protocol 則是表示最終使用的協議。

至此,http已經完成它所有工作了,接下來就是完全按照websocket協議進行了。具體的協議就不在這闡述了。

302狀態碼 小結HTTP狀態碼

作為乙個web開發工程師,我們平時都會和諸如200,304,404,501等狀態碼打交道,那麼它們是什麼意思呢?今天,我們來聊聊 http狀態碼是服務端返回給客戶端 因為這裡是web開發,這裡的客戶端指瀏覽器客戶端 的3位數字 這些狀態碼相當於瀏覽器和伺服器之間的對話資訊。它們相互溝通兩者之間的事情...

狀態碼202 HTTP狀態碼

當瀏覽者訪問乙個網頁時,瀏覽者的瀏覽器會向網頁所在伺服器發出請求。當瀏覽器接收並顯示網頁前,此網頁所在的伺服器會返回乙個包含http狀態碼的資訊頭 server header 用以響應瀏覽器的請求。http狀態碼的英文為http status code。下面是常見的http狀態碼 狀態碼詳細介紹說明...

http狀態碼含義

如果某項請求傳送到您的伺服器要求顯示您 上的某個網頁 例如,使用者通過瀏覽器訪問您的網頁或 googlebot 抓取網頁時 伺服器將會返回 http 狀態碼響應請求。此狀態 提供關於請求狀態的資訊,告訴 googlebot 關於您的 和請求的網頁的資訊。一些常見的狀態 為 1xx 臨時響應 表示臨時...