Web基礎之HTTP協議詳解

2021-08-01 19:10:03 字數 2811 閱讀 1150

web基礎之http協議詳解

一、瀏覽器訪問伺服器的簡單流程:

二、http協議資料報的抓取

如果需要抓取http協議的資料報,可以使用httpwatch或者fiddler

httpwatch支援ie和firefox

fiddler則支援各種瀏覽器,因為其抓取的所有的http協議資料報

我們使用fiddler抓一下http的請求和響應

三、使用fiddler抓取我們自己寫的簡單頁面

使用fiddler抓取的請求報文

使用fiddler抓取的響應報文

四、http協議詳解

1、乙個典型的請求:

post http://localhost:8080/servlet02/login http/1.1  ---> 請求首行

host: localhost:8080   

---> 請求頭

username=shelley&userpwd=123---> 請求正文

get跟post的區別:get的引數會作為url的q uerystring提交,而post的引數會作為請求正文提交

五、更深層次解讀http協議

請求首行、請求空行和請求正文

get:請求方式

http://localhost...:請求路徑

http/1.1:請求協議以及版本,1.1與1.0之間的區別在於1.0一次請求一次連線,1.1可以多次連線,預設保持3000ms

請求空行:作為請求頭與請求正文之間的空行

請求正文:如果請求方式為post則有請求正文,正文中包含的就是請求的引數,如果請求方式為get則沒有正文,引數可以通過url傳遞

請求頭詳解:

host:請求主機名與埠號

connection:保持連線,與http的協議版本相關,如果是1.0,則沒有。

content-length:正文長度

user-agent:使用者**,指的是使用者所使用的機器與瀏覽器資訊,如果見過顯示你系統與瀏覽器的資訊的,甚至你所在位置,  天氣預報,沒錯,就是用這個,以及訪問ip來製作的。

content-type:表單資料型別。

accept:接受資源型別,可以有多個,有優先順序。

referer:請求****,可以使用在搜尋統計,防盜煉等。

accept-encoding:代表可以接受的壓縮型別,早期傳輸速度很慢時,文字壓縮率高,通常會做壓縮。

accept-language:接收語言型別。

cookie:**伺服器在客戶端儲存的相關資訊。與資訊洩露相關。

響應首行、響應空行、響應正文

http/1.1:協議號/版本

200 ok:狀態碼 描述。

常見響應狀態碼:

狀態碼、描述:

200:成功

404:資源找不到

500:伺服器錯誤

302:重定向

304:快取獲取

響應空行:分割作用

響應正文:網頁的html文件

響應頭詳解:

六、總結

理論知識總是枯燥無味的;但不知道為什麼,了解http協議個人覺得並不是那麼枯燥無味;所以,你一定得耐著性子慢慢讀;其實http協議很複雜,這說的詳解也只是了解一下大概;

還有就是fiddler工具的使用,有時我總是害怕使用新的工具;其實,你越是害怕,就越是不敢嘗試,就越整我不了;只有勇於嘗試,才不會害怕;

通過學習,我對http協議有了一定的了解,你呢?

共勉!

Web開發之HTTP協議詳解

1.什麼是http?超文字傳輸協議 2.http用來幹什麼?規範了瀏覽器和伺服器之間的資料傳輸格式 利用鍵值對進行資料傳輸 說白了就是一種規範,特別注意如果沒有http協議,瀏覽器和伺服器之間也是可以實現互動的,只是很複雜,那麼為什麼呢?那是因為http不是傳送資料的通道,它只是乙個傳送資料的通道中...

http協議詳解(一)HTTP協議基礎

最近在看一些http的東西,http比較雜,大致整理了一下,用思維導圖的方式呈現了出來。我會分幾個板塊來介紹http協議,具體的板塊也在下面的思維導圖中標註出來了,盡量以簡潔的方式為大家呈現http的內容。初寫部落格,文中有些紕漏的地方還請大家指點。http 超文字傳輸協議,本質上是一種通訊協議。用...

HTTP 協議基礎詳解

http協議屬於應用層協議。流程就是客戶端傳送請求報文到伺服器,然後伺服器回傳響應報文到客戶端。客戶端請求報文格式 伺服器響應報文格式 其中請求頭部欄位有多種 accept 瀏覽器可接受的mime型別 accept encoding 瀏覽器能夠進行解碼的資料編碼方式 accept language ...