《圖解HTTP》—簡單的HTTP協議

簡單的HTTP協議

客戶端和服務端的通訊

​ 通常請求都是有客戶端發出的,而服務器回覆的是響應。服務器相對來講是比較被動的。html

客戶端,請求方法 :GET 、地址: / 、協議版本 :HTTP1.1 、請求首部:Host:xxx等。服務器返回的信息:HTTP協議版本號,狀態碼以及結果短語、響應首部(響應時間以後的)和資源主體(html開始)。前端

HTTP協議是無狀態的

​ 一開始在公司作先後分離,引入了token機制,爲何要這麼作?本質上仍是由於HTTP協議是無狀態的。所謂無狀態,就是通訊的雙方沒有記住通訊歷史,協議自己是不保留一切請求和響應的信息。這也是確保HTTP協議有可以處理大量事務且具備可伸縮性的緣由。web

HTTP 方法

​ GET :獲取資源。安全

​ POST :傳輸實體主體,主要目的是傳輸。服務器

​ PUT : 傳輸文件,保存到指定的位置。不帶驗證機制。微信

​ HEAD : 得到報文首部,不經常使用。cookie

​ DELETE :刪除文件。 一樣不帶驗證機制。web安全

​ OPTIONS :查詢支持的方法。不經常使用學習

​ TRACE :追蹤路徑。挺有意思的一個東西。能夠計算代理服務器有多少個,可是容易引起xst攻擊(好想學web安全)。不經常使用3d

​ CONNECT :要求使用隧道協議鏈接代理,不經常使用。

持久連接節省通訊量

​ 一圖勝千言啊。

​ 1.1裏提出來HTTP keep-alive。持久連接,只要沒有一端提出明確的斷開連接,則保持TCP連接。

​ 管線化。並行發送響應,無需等待上一個請求結束。

​ 以前說過的,由於HTTP協議是無狀態的,沒法判斷登錄驗證,因此須要在請求中添加參數來管理登陸狀態。

​ Cookie,服務器生成Cookie,response 過去,那麼接受的客戶端第二次發請求就能夠設置了一個參數,保存當前登錄的信息。

​ 如如有錯誤之處,看官多多指正,隨手點個讚唄,親。另外個人微信公衆號也會慢慢發佈前端的東西,但願學習前端的小夥伴能夠關注一波moomoocode

相關文章
相關標籤/搜索