HTTP完整請求過程

2021-10-25 08:35:10 字數 1704 閱讀 8142

http請求報文

http響應報文

通俗來講,他就是計算機通過網路進行通訊的規則,是乙個基於請求與響應,無狀態的,應用層的協議,常基於tcp/ip協議傳輸資料。目前任何終端(手機,膝上型電腦。。)之間進行任何一種通訊都必須按照http協議進行,否則無法連線。

有時需要對使用者之前的http通訊狀態進行儲存,比如執行一次登陸操作,在30分鐘內所有的請求都不需要再次登陸。於是引入了cookie技術。

http/1.1想出了持久連線(http keep-alive)方法。其特點是,只要任意一端沒有明確提出斷開連線,則保持tcp連線狀態,在請求首部欄位中的connection: keep-alive即為表明使用了持久連線。

等等還有很多。。。。。。

下面開始講解重頭戲:http請求報文,響應報文,對應於上述步驟的2,3,4,5,6。

http報文是面向文字的,報文中的每乙個欄位都是一些ascii碼串,各個欄位的長度是不確定的。http有兩類報文:請求報文和響應報文。

乙個http請求報文由請求行(request line)、請求頭部(header)、空行和請求資料4個部分組成,下圖給出了請求報文的一般格式。

請求頭部為請求報文新增了一些附加資訊,由「名/值」對組成,每行一對,名和值之間使用冒號分隔。

常見請求頭如下:

請求頭部的最後會有乙個空行,表示請求頭部結束,接下來為請求資料,這一行非常重要,必不可少。

可選部分,比如get請求就沒有請求資料。

下面是乙個post方法的請求報文:

/1.1    請求行

host: localhost

user-agent: mozilla/

5.0(windows nt

5.1; rv:

10.0

.2) gecko/

20100101 firefox/

10.0

.2  請求頭

空行username=aa&password=

1234  請求資料

http響應報文主要由狀態行、響應頭部、空行以及響應資料組成。

由3部分組成,分別為:協議版本,狀態碼,狀態碼描述。
其中協議版本與請求報文一致,狀態碼描述是對狀態碼的簡單描述,所以這裡就只介紹狀態碼。

一次完整的 HTTP 請求過程

一次完整的http請求過程從tcp三次握手建立連線成功後開始,客戶端按照指定的格式開始向服務端傳送http請求,服務端接收請求後,解析http請求,處理完業務邏輯,最後返回乙個http的響應給客戶端,http的響應內容同樣有標準的格式。無論是什麼客戶端或者是什麼服務端,大家只要按照http的協議標準...

一次完整的HTTP請求過程

一次完整的http請求過程從tcp三次握手建立連線成功後開始,客戶端按照指定的格式開始向服務端傳送http請求,服務端接收請求後,解析http請求,處理完業務邏輯,最後返回乙個http的響應給客戶端,http的響應內容同樣有標準的格式。無論是什麼客戶端或者是什麼服務端,大家只要按照http的協議標準...

一次完整的 HTTP 請求過程

一次完整的http請求過程從tcp三次握手建立連線成功後開始,客戶端按照指定的格式開始向服務端傳送http請求,服務端接收請求後,解析http請求,處理完業務邏輯,最後返回乙個http的響應給客戶端,http的響應內容同樣有標準的格式。無論是什麼客戶端或者是什麼服務端,大家只要按照http的協議標準...