Charles抓包工具過濾網絡請求


Charles是一個HTTP代理服務器,HTTP監視器,反轉代理服務器,當瀏覽器連接Charles的代理訪問互聯網時,Charles可以監控瀏覽器發送和接收的所有數據。它允許一個開發者查看所有連接互聯網的HTTP通信,這些包括request, response和HTTP headers (包含cookies與caching信息)。來自百度百科

  Charles 設置成系統代理

Charles是通過將自己設置成代理服務器來完成封包截取的,所以使用 Charles 的第一步是將其設置成系統的代理服務器。選擇菜單中的 “Proxy” -> “Windows Proxy” 來將 Charles 設置成系統代理。如下所示:

之后,你就可以看到源源不斷的網絡請求出現在 Charles 的界面中。

注意:

Chrome 和 Firefox 需要設置成使用系統的代理服務器,或者直接將代理服務器設置成127.0.0.1:8888。

 

Charles 主界面介紹

Charles 主要提供兩種查看封包的視圖,分別名為 “Structure” 和 “Sequence”。可以根據具體的需要在這兩種視圖之前來回切換。

Structure視圖將網絡請求按訪問的域名分類。

Sequence視圖將網絡請求按訪問的時間排序。

 Charles 提供了簡單的 Filter 功能,輸入關鍵字來快速篩選出 URL 中帶指定關鍵字的網絡請求。對於某一個具體的網絡請求,你可以查看其詳細的請求內容和響應內容。如果請求內容是 POST 的表單,Charles 會自動幫你將表單進行分項顯示。如果響應內容是 JSON 格式的,那么 Charles 可以自動幫你將 JSON 內容格式化,方便你查看。如果響應內容是圖片,那么 Charles 可以顯示出圖片的預覽。

過濾網絡請求

通常情況下,需要對網絡請求進行過濾,只監控指定服務器的請求。3種辦法:

方法一:在主界面的中部的 Filter 欄中輸入需要過濾出來的關鍵字。例如我們的服務器的地址是:http://www.jianshu.com , 那么只需要在 Filter 欄中輸入 jianshu 即可。

 

 

方法二:菜單欄選擇 “Proxy”->”Recording Settings”,在彈出的窗口中選擇 Include 欄,再點擊“Add”,在彈出的窗口中輸入需要監控的協議,主機地址,端口號等信息,來添加一個項目。如下圖所示:

 

 

方法三:在想過濾的網絡請求上右擊,選擇 “Focus”,之后在 Filter 一欄勾選上 Focussed 一項,如下圖所示: 

 

可以臨時性快速地過濾一些沒有通過關鍵字的網絡請求。

 

截取手機上的網絡封包

  1. Charles 可以用來截取移動設備上的網絡請求。需要確保電腦和手機能ping通。
  2. 首先打開Charles的代理功能。具體在菜單欄上選擇 “Proxy”->”Proxy Settings”,輸入代理端口:8888,並勾上“Enable transparent HTTP proxying”選項
  3. 手機的網絡連接中,將HTTP代理切換成手動,填上 Charles 運行所在的電腦的 IP,以及端口號 8888
  4. 設置完畢在手機打開任意程序,此時,可以看到 Charles彈出手機請求連接的確認窗口,點擊 “Allow” 即可完成設置。


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM