一:前言
? ??????http協議是一種網絡傳輸協議,這個協議規(guī)定了我們請求數據和響應數據的格式和傳遞數據之中部分數據的規(guī)范。
二:請求
? ??????瀏覽器和服務器進行交互的開始,這個請求是瀏覽器發(fā)送的。請求時攜帶數據的格式叫做請求報文:
? ? ? ? 1.請求行 : ?說明請求方式,請求路徑和協議版本的數據。
? ? ? ? ? ? ? ? - 需要注意的是請求方式 : GET,POST,PUT,PETACH,DELETE
? ? ? ? ? ? ? ? - GET : 主要以獲取信息為主的請求方式,這種請求方式雖然也可以攜帶數據,但是攜帶數據量是有限制的。 最大約為4KB過長的數據會導致瀏覽器報錯。
? ? ????????????- GET請求攜帶數據是把數據放在請求地址之中的!
? ? ????????????- GET請求的數據只能有一種形式 "key=value&key2=value2", 其他格式都是不被GET請求支持的
? ??????????????- POST : 主要以發(fā)送數據為主的請求方式 , 這種方式的主要作用就是攜帶數據,所以攜帶數據量的大小是沒有限制的
? ? ????????????- POST請求攜帶數據的格式非常多 ,我們通常是通過請求頭告知服務端我們攜帶數據的格式是怎樣的 ?
? ? ????????????- POST攜帶數據是把數據放在請求體之中的。
? ??????????????- PUT,PETACH : 修改內容
? ? ? ? ? ? ? ? - DELETE : 刪除內容
? ? ? ? 2.如何查看請求報文 :
? ??????????????- 我們使用瀏覽器的控制臺調試工具,工具之中的 network 選項里可以查看當前請求的所有內容包括請求報文信息和響應報文信息;
? ? ? ? 3.請求報文之中的第二個內容 : 請求頭
? ? ? ? ? ? ? ? -?是由多組key:value 組成的請求說明信息,這些信息主要告知服務器當前的請求詳情
? ? ? ? 4.請求報文之中的第三個內容 : 請求空行
? ? ? ? 5.請求報文之中的第四個內容 : 請求體
三:響應
? ? ? ? 服務器根據瀏覽器的請求返回數據的格式
? ??????http響應報文:
? ? ? ? ? ? ? ? 1.響應行
? ??????????????????????- 響應行之中有兩條信息 : 是響應狀態(tài)和協議版本;
? ? ? ? ? ? ? ? ? ? ? ? -? 響應狀態(tài) : 響應狀態(tài)碼?
? ? ?????????????????????????????- 1.1 開頭的是準備狀態(tài) (忽略就可以了,協議之中存在的概念)
? ? ?????????????????????????????- 1.2 開頭的是成功狀態(tài)
? ? ? ?????????????????????????????????- 比較常見的狀態(tài)碼是 200
? ? ?????????????????????????????- 1.3 開頭的是重定向狀態(tài)
? ? ? ?????????????????????????????????- 302 : 重定向
? ? ? ?????????????????????????????????- 304 : 使用網頁緩存并沒有發(fā)送互聯網請求
? ? ?????????????????????????????- 1.4 開頭的是路徑錯誤狀態(tài)
? ? ? ?????????????????????????????????- 403 : 拒絕響應
? ? ? ?????????????????????????????????- 404 : 在服務器沒有定義相應的響應返回內容;
? ? ? ?????????????????????????????????- 405 : 請求方式不被允許
? ? ?????????????????????????????- 1.5 開頭的是服務器錯誤狀態(tài)
? ? ? ?????????????????????????????????- 500 : 網絡錯誤
? ? ? ?????????????????????????????????- 502 : 防火墻錯誤
? ? ? ? ? ? ? ? 2.響應頭
? ? ? ? ? ? ? ? ? ? ? ? -?