HTTP協議之請求協議
阿新 • • 發佈:2018-05-09
版本 webkit live 直接 請求方法 o-c 頭信息 encoding url編碼
一. 請求協議格式:
請求首行; //請求方式 請求路徑 協議和版本,例如:GET /index.html HTTP/1.1
請求頭信息; //請求頭名稱:請求頭內容,即為key:value 格式,例如:Host:localhost
空行; //用來與請求體分隔開
請求體; //GET沒有請求體,只有POST有請求體
二. GET請求
- HTTP默認請求方法為GET請求
- 沒有請求體
- 數據必須在1K之內
- GET數據會暴露在瀏覽器的地址欄中
- GET請求的常見操作
- 瀏覽器在地址欄中直接給出URL,那麽一定是GET請求
- 點擊頁面上的超鏈接也一定是GET請求
- 提交表單時,表單默認使用GET請求,但可設置為POST請求
舉例如下
GET 127.0.0.1:8090/login HTTP/1.1 <!--GET請求,請求服務器路徑為 127.0.0.1:8090/login ,協議為1.1--> Accept:text/html,application/xhtml+xml,application/xml;q=0.9,image/webp,*/*;q=0.8 <!--當前客戶端可以接收的文檔類型 q為權重 越大會更傾向於前面--> Accept-Encoding:gzip, deflate, sdch <!--支持的壓縮格式--> Accept-Language:zh-CN,zh;q=0.8 <!--當前客戶端支持的語言-->
三. POST請求
- 常見操作
- 數據不會出現在地址欄中
- 數據上限沒有大小
- 有請求體
- 請求體如果存在中文,會使用URL編碼
舉例如下
Request Headers Accept:text/html,application/xhtml+xml,application/xml;q=0.9,image/webp,*/*;q=0.8 Accept-Encoding:gzip, deflate Accept-Language:zh-CN,zh;q=0.8 Cache-Control:no-cache Connection:keep-alive Content-Length:13 <!--請求體的長度,這裏表示13個字節--> Content-Type:application/x-www-form-urlencoded <!--表單的數據類型--> Cookie:csrftoken=z5H43ZwARx7AIJ82OEizBOWbsAQA2LPk Host:127.0.0.1:8090 Origin:http://127.0.0.1:8090 Pragma:no-cache Referer:http://127.0.0.1:8090/login/ <!--請求來自哪個頁面,例如你在百度上點擊鏈接到了這裏,那麽Referer:http://www.baidu.com;--> <!--如果你是在瀏覽器的地址欄中直接輸入的地址,那麽就沒有Referer這個請求頭了;--> Upgrade-Insecure-Requests:1 User-Agent:Mozilla/5.0 (Macintosh; Intel Mac OS X 10_11_1) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/53.0.2785.89 Safari/537.36 Form Data username:yuan
Referer
請求頭是比較有用的一個請求頭,它可以用來做統計工作,也可以用來做防盜鏈.
HTTP協議之請求協議