1. Fiddler工作原理
Fiddler工作於OSI七層模型的應用層,Fiddler在瀏覽器和服務器之間建立了一個代理服務器,它可以捕獲通過的http(s)請求。Fiddler啟動后,會自動將代理服務器設置成本機,默認端口為8888。
Fiddler不僅能記錄PC上瀏覽器的網絡請求數據,還可以記錄同一局域網中其他設備的http(s)請求數據。數據傳遞流程大致如下:
2. Fiddler下載地址:https://www.telerik.com/download/fiddler
安裝后打開Fiddler,界面是這樣的:
3.Fiddler默認配置是抓取不了https的報文,會提示“您的連接不是私密連接”。如果抓取的是https報文,需要修改一下Fiddler的配置,並重啟保證設置生效。
(1)抓取主機的https報文
(2)抓取手機App的https報文
1)下載Fiddler證書到電腦桌面
- 步驟:Fiddler 主菜單 Tools --> Options-->HTTPS-->Actions-->Export Root Certificate to Desktop,結果如下。
- 可以看到桌面上有一個證書文件:
2)安裝Fiddler證書到手機上
- 使用微信或者其他方式發送Fiddler證書到手機上,並安裝
- 查看證書是否已安裝
步驟:設置-->安全-->更多安全設置-->加密與憑據-->受信任的憑據-->用戶
結果:可以看到已安裝的Fiddler證書
4.開啟Fiddler的遠程連接,Fiddler 主菜單 Tools --> Options--> Connections頁簽,選中Allow remote computers to connect,並記住端口號為8888,等會設置手機代理時需要。
設置好后重啟fiddler保證設置生效。設置如下:
5. 查看電腦IP,在cmd中輸入ipconfig
6. 在Android 手機上設置代理
(1)長按連接的Wifi,點擊修改網絡(Modify network)
(2)Android手機設置代理並保存
1)Proxy選擇手動(Manual)
2)輸入主機名(Hostname),即上面電腦的IP
3)輸入端口號(Port),即Fiddler默認的端口號8888
7. 設置完畢,在手機端對App進行操作,可以看到Fiddler上抓取了對應的網絡請求和響應。
- 啟動京東App,可以看到Fiddler上已經抓取到相應的https包了。