簡(jiǎn)單的HTTP協(xié)議

前端7班_leec

HTTP Protocol

HTTP協(xié)議用于客戶端和服務(wù)器端之間的通信##

請(qǐng)求訪問(wèn)文本貨圖像等資源的一端稱(chēng)為客戶端,提供資源響應(yīng)的一端稱(chēng)為服務(wù)器端。HTTP規(guī)定,請(qǐng)求從客戶端發(fā)出,最后服務(wù)器端響應(yīng)該請(qǐng)求并返回。

下面是從客服端發(fā)送給baidu服務(wù)器端的請(qǐng)求報(bào)文中的內(nèi)容:

HTTP請(qǐng)求

起始行開(kāi)頭的GET表示請(qǐng)求訪問(wèn)服務(wù)器的方法,緊跟后面的/表示請(qǐng)求訪問(wèn)的資源對(duì)象(請(qǐng)求URI),HTTP/1.1是HTTP版本號(hào)。
請(qǐng)求報(bào)文是由請(qǐng)求方法、請(qǐng)求URI、協(xié)議版本、可選的請(qǐng)求首部字段和內(nèi)容實(shí)體構(gòu)成。

接收到請(qǐng)求的服務(wù)器,將請(qǐng)求內(nèi)容的處理結(jié)果以響應(yīng)的方式返回。


HTTP響應(yīng)

200 OK表示請(qǐng)求的處理結(jié)果的狀態(tài)碼和原因短語(yǔ).
響應(yīng)報(bào)文由協(xié)議版本、狀態(tài)碼、原因短語(yǔ)、可選的響應(yīng)首部字段以及實(shí)體主體構(gòu)成。
HTTP是不保存狀態(tài)的協(xié)議,HTTP協(xié)議自身不對(duì)請(qǐng)求和響應(yīng)之間的通信狀態(tài)進(jìn)行保存,不做持久化處理,更快的處理大量事物,確保協(xié)議的可伸縮性。為了實(shí)現(xiàn)期望的保持狀態(tài)功能,引入了cookie技術(shù)。
HTTTP協(xié)議使用了URI定位互聯(lián)網(wǎng)資源。當(dāng)客戶端請(qǐng)求訪問(wèn)資源而發(fā)送請(qǐng)求時(shí),URI需要將作為請(qǐng)求報(bào)文中的請(qǐng)求URI包含在內(nèi)。如果不是訪問(wèn)特定資源而是對(duì)服務(wù)器本身發(fā)起請(qǐng)求,可以用一個(gè)*來(lái)代替請(qǐng)求URI。

HTTP方法##

  • GET:獲取資源
    GET方法用來(lái)請(qǐng)求訪問(wèn)已被URI識(shí)別的資源。
  • POST:傳輸實(shí)體主體
  • PUT:傳輸文件(一般不使用)
  • HEAD:獲得報(bào)文首部
  • DELETE:刪除文件
  • OPTIONS:詢問(wèn)支持的方法
  • TRACE:追蹤路徑
  • CONNECT:要求用隧道協(xié)議連接處理

持久連接節(jié)省通信量

HTTP協(xié)議的初始版本中,每進(jìn)行一次HTTP通信就要斷開(kāi)一次TCP連接,HTTP1.1提出了持久連接的方法。只要任意一端沒(méi)有明確提出斷開(kāi)連接,則保持TCP連接狀態(tài)。在HTTP/1.1中,所有的連接默認(rèn)都是持久連接。持久連接使得多數(shù)請(qǐng)求以管線化發(fā)送方式成為可能,同時(shí)并行發(fā)送多個(gè)請(qǐng)求。
Cookie技術(shù)通過(guò)在請(qǐng)求和響應(yīng)報(bào)文中寫(xiě)入Cookie信息來(lái)控制客戶端的狀態(tài)。

本文整理自圖解HTTP 圖片來(lái)自于網(wǎng)絡(luò) 轉(zhuǎn)載請(qǐng)注明出處

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時(shí)請(qǐng)結(jié)合常識(shí)與多方信息審慎甄別。
平臺(tái)聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡(jiǎn)書(shū)系信息發(fā)布平臺(tái),僅提供信息存儲(chǔ)服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

友情鏈接更多精彩內(nèi)容