使用Wireshark抓包httpp請求

目錄

簡介

工作原理

消息結構

請求方法

狀態碼

實驗

參考


簡介

HTTP協議(HyperText Transfer Protocol,超文本傳輸協議)是因特網上應用最爲廣泛的一種網絡傳輸協議,所有的WWW文件

都必須遵守這個標準。

HTTP是一個基於TCP/IP通信協議來傳遞數據(HTML 文件, 圖片文件, 查詢結果等)。

工作原理

HTTP協議工作於客戶端-服務端架構上。瀏覽器作爲HTTP客戶端通過URL向HTTP服務端即WEB服務器發送所有請求。

Web服務器有:Apache服務器,IIS服務器(Internet Information Services)等。

Web服務器根據接收到的請求後,向客戶端發送響應信息。

HTTP協議是無狀態協議。無狀態是指協議對於事務處理沒有記憶能力。缺少狀態意味着如果後續處理需要前面的信息,則它必

須重傳,這樣可能導致每次連接傳送的數據量增大。另一方面,在服務器不需要先前信息時它的應答就較快。

消息結構

客戶端發送一個HTTP請求到服務器的請求消息包括以下格式:請求行(request line)、請求頭部(header)、空行和請求數據

四個部分組成。

HTTP響應也由四個部分組成,分別是:狀態行、消息報頭、空行和響應正文。

請求方法

HTTP1.0 定義了三種請求方法: GET, POST 和 HEAD方法。

HTTP1.1 新增了六種請求方法:OPTIONS、PUT、PATCH、DELETE、TRACE 和 CONNECT 方法。

get:請求能夠攜帶的參數比較少,大小有限制,會在瀏覽器的URL地址欄顯示數據內容,不安全,但高效

post:請求能夠攜帶的參數沒有限制,大小沒有限制,不會在瀏覽器的URL地址欄顯示數據內容,安全,但不高效。

狀態碼

  • 200 - 請求成功
  • 301 - 資源(網頁等)被永久轉移到其它URL
  • 404 - 請求的資源(網頁等)不存在
  • 500 - 內部服務器錯誤

實驗

使用Wireshark抓包Http請求。

首先客戶端發出GET請求,消息頭中:

Accept:告訴瀏覽器,它所支持的數據類型

Accept-Encoding:支持哪種編碼格式  GBK   UTF-8   GB2312  ISO8859-1

Accept-Language:告訴瀏覽器,它的語言環境

Connection:告訴瀏覽器,請求完成是斷開還是保持連接

HOST:主機..../.

接着,服務端響應。用Cookie來保存請求的信息。因爲這個網站就是用html寫的靜態網站,所以data就是一個text/html。

如果繼續追蹤http流,可以發現這是一個完成的TCP通信過程,包含握手和揮手,其中TCP segment of a reassembled PDU代表http的一次響應報文被TCP分組發送。

參考

https://www.runoob.com/http/http-tutorial.html

https://blog.csdn.net/wz_cow/article/details/81159342

 

 

 

 

 

 

 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章