iOS —— 網絡封包分析工具 Charles(二)

Fiddler 與 Charles的特殊用途 

一、Fiddle2(v2.4.2.6,windows)

      fiddler除了常規的替換http請求、模擬慢網速外,還有一些日常開發裏能用到的特殊功能。

1. http代理服務器

      fiddler啓動的時候就會啓動代理服務器服務,並監聽8888端口。這種方法可以捕獲以其爲代理服務器的請求:如虛擬機裏的瀏覽器、遠程主機的請求等等。舉個例子:把虛擬機的瀏覽器添加代理服務器到fiddler,而且多個虛擬機的瀏覽器都可以共用一個fiddler,在fiddler裏面可以實現其常規的功能。

配置步驟:

1) 主菜單Tools——Fiddler Options

2) 如圖:

 

3) 設置瀏覽器的代理服務器爲fiddler所在機器的ip+host,這裏的瀏覽器可以是虛擬機裏的、局域網的另外一部電腦、移動設備……

 

 

注:windows和mac下的代理設置,在瀏覽器的更改代理服務器菜單可以打開該界面。

 

4)  done,查看http、替換http等等……

 

二、Charles(v3.5.2,mac&windows)

     Charles是mac os和windows下的另外一個抓包軟件(均收費,可破解),功能與fiddler類似,優點是可以自定義上下行網速、External Proxy、反向代理配置簡單、可解析AMF協議數據……

1. http代理服務器

     該功能和fiddler的比較類似,也是啓動時就會開啓代理服務器服務,默認監聽8888端口,實現的功能也基本雷同。

如果需要改變監聽的端口可以按照以下的步驟更改:

1) 主菜單Proxy——Proxy Settings

2) 如圖:

 

3) 同fiddler

 

2. External Proxy

該功能可以把經過Charles的請求轉到其他代理服務器(如fiddler),適用於特殊情況下需要用到兩個軟件的特點進行開發的時候。 

配置步驟:

1) 主菜單Proxy——External Proxy Settings

2) 如圖,所填分別爲fiddler所在機器的ip和其監聽的host:

 

3) 訪問一個網站,現在可以看到Charles和fiddler的界面同時捕捉到了一樣的http請求。Fiddler屬於上游,在fiddler裏面對http進行的一些修改直接會影響到Charles裏面的請求結果。

 

附:Charles(mac版本)一些常用操作的教程

1. Charles替換http的方法

1) 主菜單Tools——No Caching,開啓no caching

2) 如下圖。在主界面右鍵響應的請求,選擇“Map Remote”(替換的請求爲線上請求)或“Map Local”(替換的請求爲本地文件)。以“Map Local”爲例:

 

 

3) 在界面裏選擇本地文件,保存配置:

 

4) 刷新頁面,查看是否替換成功

 

5) 管理被替換的http請求

主菜單Tools——Map Local,見下圖。可添加新規則,或對已有的替換規則進行刪除、使生效/不生效,也可以在這裏全局開啓/關閉替換規則。

 

6) 注意,暫時沒發現Charles能直接把請求status code替換爲404、500等的方法。但是可以用Map Remote替換地址爲任意一個線上的404或500地址來間接模擬。

 

2. 模擬慢網速

主菜單Proxy——Throttle Settings,可選擇內置的一些帶寬設置或自定義設置,保存後可以點擊主界面的按鈕開啓/禁用慢網速功能。

 

 

3. 按照柱狀圖查看所有請求

主界面選擇左側的站點文件夾,在右邊選擇“Chart”視圖查看所有請求。可按照“請求順序”、“請求數據大小”、“耗時”、“MIME類型”分類進行查看、分析。

 

 


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