HTTP請求行、請求頭、請求體詳解


    HTTP請求行、請求頭、請求體詳解

文本引用:https://blog.csdn.net/u010256388/article/details/68491509/

HTTP請求報文解剖 

HTTP請求報文由3部分組成(請求行+請求頭+請求體):

 

下面是一個實例

 

 ①是請求方法,GET和POST是最常見的HTTP方法,除此以外還包括DELETE、HEAD、OPTIONS、PUT、TRACE。不過,當前的大多數瀏覽器只支持GET和POST,Spring 3.0提供了一個HiddenHttpMethodFilter,允許你通過“_method”的表單參數指定這些特殊的HTTP方法(實際上還是通過POST提交表單)。服務端配置了HiddenHttpMethodFilter后,Spring會根據_method參數指定的值模擬出相應的HTTP方法,這樣,就可以使用這些HTTP方法對處理方法進行映射了。 

②為請求對應的URL地址,它和報文頭的Host屬性組成完整的請求URL,③是協議名稱及版本號。 

④是HTTP的報文頭,報文頭包含若干個屬性,格式為“屬性名:屬性值”,服務端據此獲取客戶端的信息。 

⑤是報文體,它將一個頁面表單中的組件值通過param1=value1&param2=value2的鍵值對形式編碼成一個格式化串,它承載多個請求參數的數據。不但報文體可以傳遞請求參數,請求URL也可以通過類似於“/chapter15/user.html? param1=value1&param2=value2”的方式傳遞請求參數。 

對照上面的請求報文,我們把它進一步分解,你可以看到一幅更詳細的結構圖: 

 

 

HTTP響應報文解剖 響應報文結構

 HTTP的響應報文也由三部分組成(響應行+響應頭+響應體): 

 

以下是一個實際的HTTP響應報文: 

 

①報文協議及版本; 
②狀態碼及狀態描述; 
③響應報文頭,也是由多個屬性組成; 
④響應報文體,即我們真正要的“干貨”。 

響應狀態碼 

和請求報文相比,響應報文多了一個“響應狀態碼”,它以“清晰明確”的語言告訴客戶端本次請求的處理結果。 

HTTP的響應狀態碼由5段組成: 

    • 1xx 消息,一般是告訴客戶端,請求已經收到了,正在處理,別急...
    • 2xx 處理成功,一般表示:請求收悉、我明白你要的、請求已受理、已經處理完成等信息.
    • 3xx 重定向到其它地方。它讓客戶端再發起一個請求以完成整個處理。
    • 4xx 處理發生錯誤,責任在客戶端,如客戶端的請求一個不存在的資源,客戶端未被授權,禁止訪問等。
    • 5xx 處理發生錯誤,責任在服務端,如服務端拋出異常,路由出錯,HTTP版本不支持等。


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM