通俗易懂。HTTP请求行、请求头、请求体、响应行、响应头、响应体详解
生活随笔
收集整理的這篇文章主要介紹了
通俗易懂。HTTP请求行、请求头、请求体、响应行、响应头、响应体详解
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
一. HTTP請求報文解剖
HTTP Request :HTTP請求
Request Line:請求行
Header:請求頭
Request Body:請求體
HTTP請求報文由3部分組成(請求行+請求頭+請求體):
下面是一個實際的請求報文:
其中,①,②和③屬于請求行;④屬于請求頭;⑤屬于報文體
- ① 是請求方法,HTTP/1.1 定義的請求方法有8種:GET、POST、PUT、DELETE、PATCH、HEAD、OPTIONS、TRACE,最常的兩種GET和POST,如果是RESTful接口的話一般會用到GET、POST、DELETE、PUT。
- ② 為請求對應的URL地址,它和報文頭的Host屬性組成完整的請求URL
- ③ 是協議名稱及版本號。
- ④ 是HTTP的報文頭,報文頭包含若干個屬性,格式為“屬性名:屬性值”,服務端據此獲取客戶端的信息。
- ⑤ 是報文體,它將一個頁面表單中的組件值通過param1=value1¶m2=value2的鍵值對形式編碼成一個格式化串,它承載多個請求參數的數據。不但報文體可以傳遞請求參數,請求URL也可以通過類似于“/chapter15/user.html? param1=value1¶m2=value2”的方式傳遞請求參數。
對照上面的請求報文,我們把它進一步分解,你可以看到一幅更詳細的結構圖:
二. HTTP響應報文解剖
1. 組成部分
HTTP的響應報文也由三部分組成(響應行+響應頭+響應體):
以下是一個實際的HTTP響應報文:
其中,①,②和③屬于請求行;④屬于請求頭;⑤屬于報文體
- ①報文協議及版本;
- ②狀態碼及狀態描述;
- ③響應報文頭,也是由多個屬性組成;
- ④響應報文體,即我們真正要的“干貨”。
2. 響應狀態碼
和請求報文相比,響應報文多了一個“響應狀態碼”,它以“清晰明確”的語言告訴客戶端本次請求的處理結果。
HTTP的響應狀態碼由5段組成:
200 OK
處理成功
303 See Other
我把你redirect到其它的頁面,目標的URL通過響應報文頭的Location告訴你。
304 Not Modified
告訴客戶端,你請求的這個資源至你上次取得后,并沒有更改,你直接用你本地的緩存吧,我很忙哦,你能不能少來煩我啊!
404 Not Found
說明沒有找到頁面,即客戶端的請求到了服務器端,無法請求到數據, 可能是客戶端的請求格式有錯誤,也可能是服務器端的資源被刪除了。
500 Internal Server Error
看到這個錯誤,最好查一下服務端的日志,看看是哪里出了問題。
總結
以上是生活随笔為你收集整理的通俗易懂。HTTP请求行、请求头、请求体、响应行、响应头、响应体详解的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 【题解报告】Leecode367. 有效
- 下一篇: 【最常用】两种java中的占位符的使用