http協議(二 報文格式)

2022-05-06 02:06:07 字數 1662 閱讀 5156

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

請求報文

請求報文例項

1. 請求行

請求行由方法字段、url 字段 和http 協議版本字段 3 個部分組成,他們之間使用空格隔開。常用的 http 請求方法有 head、get、post、put、patch、delete、options、trace、connect等。最常用的是get、post。

http/1.0支援:get、post、head三種http請求方法。

http/1.1是當前正在使用的版本。該版本預設採用持久連線,並能很好地配合**伺服器工作。還支援以管道方式同時傳送多個請求,以便降低線路負載,提高傳輸速度。

http/1.1新增了:options、put、delete、trace、connect五種http請求方法。

另外用於特定請求的url方法還有:

請求頭部由關鍵字/值對組成,每行一對,關鍵字和值用英文冒號「:」分隔。請求頭部通知伺服器有關於客戶端請求的資訊,常見的請求頭有:

3. 空行

最後乙個請求頭之後是乙個空行,傳送回車符和換行符,通知伺服器以下不再有請求頭。

4. 請求體(請求正文)

請求體不在 get 方法中使用,而是在post 方法中使用。post 方法適用於需要客戶填寫表單的場合。與請求體相關的最常使用的是請求體型別 content-type 和請求體長度 content-length;

http響應也由四個部分組成,分別是:狀態行、訊息報頭(響應頭)、空行和響應正文。如下圖:

響應報文

響應報文例項

1. 狀態行

狀態行格式:http-version status-code reason-phrase crlf

其中,http-version表示伺服器http協議的版本;status-code表示伺服器發回的響應狀態**;reason-phrase表示狀態**的文字描述。狀態**由三位數字組成,第乙個數字定義了響應的類別,且有五種可能取值。

常見狀態**、狀態描述的說明如下。

響應頭用於描述伺服器的基本資訊,以及資料的描述,伺服器通過這些資料的描述資訊,可以通知客戶端如何處理等一會兒它回送的資料。常見的響應頭欄位及其含義:

allow:伺服器支援哪些請求方法(如get、post等)。

content-encoding:文件的編碼(encode)方法。

content-length:表示內容長度。

content- type:表示後面的文件屬於什麼mime型別。

date:當前的gmt時間

等等...

3. 空行

同請求報文中的空行

4. 響應體

1). 前後端分離: 響應正文是乙個json

2). 後端渲染: 響應正文是乙個html文件

HTTP協議報文格式

接下來我們看看http協議 hypertext transfer protocol 超文字傳輸協議 瀏覽器端 客戶端 向web伺服器端訪問頁面的過程和http協議報文的格式。基於http協議的客戶機訪問包括4個過程,分別是建立tcp套接字連線 傳送http請求報文 接收http應答報文和關閉tcp套...

HTTP協議報文格式

http協議 hypertext transfer protocol 超文字傳輸協議 瀏覽器端 客戶端 向web伺服器端訪問頁面的過程和http協議報文的格式。基於http協議的客戶機訪問包括4個過程,分別是建立tcp套接字連線 傳送http請求報文 接收http應答報文和關閉tcp套接字連線 1....

HTTP協議報文格式

http是基於客戶端 服務端 c s 的架構模型,http使用統一資源識別符號 uniform resource identifiers,uri 來傳輸資料和建立連線。一旦建立連線後,資料訊息就通過類似internet郵件所使用的格式 rfc5322 和多用途internet郵件擴充套件 mime ...