3-HTTP 請求報文
阿新 • • 發佈:2021-06-16
1. HTTP 請求報文介紹
HTTP最常見的請求報文有兩種:
- GET 方式的請求報文
- POST 方式的請求報文
說明:
-
- GET: 獲取web伺服器資料
-
- POST: 向web伺服器提交資料
2. HTTP GET 請求報文分析
HTTP GET 請求報文效果圖:
GET 請求原始報文說明:
GET / HTTP/1.1\r\n Host: www.itcast.cn\r\n Connection: keep-alive\r\n Upgrade-Insecure-Requests: 1\r\n User-Agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10_12_4) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/69.0.3497.100 Safari/537.36\r\n Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/webp,image/apng,*/*;q=0.8\r\n Accept-Encoding: gzip, deflate\r\n Accept-Language: zh-CN,zh;q=0.9\r\n Cookie: pgv_pvi=1246921728; \r\n \r\n (請求頭資訊後面還有一個單獨的’\r\n’不能省略)
說明:
每項資料之間使用:\r\n
3. HTTP POST 請求報文分析
HTTP POST 請求報文效果圖:
請求體效果圖:
POST 請求報文說明:
---- 請求行 ---- POST /xmweb?host=mail.itcast.cn&_t=1542884567319 HTTP/1.1 # POST請求方式 請求資源路徑 HTTP協議版本 ---- 請求頭 ---- Host: mail.itcast.cn # 伺服器的主機地址和埠號,預設是80 Connection: keep-alive # 和服務端保持長連線 Content-Type: application/x-www-form-urlencoded # 告訴服務端請求的資料型別 User-Agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10_12_4) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/69.0.3497.100 Safari/537.36 # 客戶端的名稱 ---- 空行 ---- ---- 請求體 ---- username=hello&pass=hello # 請求引數
4. 小結
一個HTTP請求報文可以由請求行、請求頭、空行和請求體4個部分組成。
請求行是由三部分組成:
請求方式
請求資源路徑
HTTP協議版本
GET方式的請求報文沒有請求體,只有請求行、請求頭、空行組成。
POST方式的請求報文可以有請求行、請求頭、空行、請求體四部分組成,注意:POST方式可以允許沒有請求體,但是這種格式很少見。