1、下載工具包web
百度搜索」fiddler 下載「 ,安裝最新版本chrome
下載的軟件安裝包爲「fiddler_4.6.20171.26113_setup.exe」格式,雙擊安裝。安裝成功,在「開始」-「全部程序」,就會看見這樣的圖標,如果經常使用的話,也能夠在桌面建一個快捷方式,以下圖:瀏覽器
2、fiddler手機抓包原理服務器
在本機開啓了一個http的代理服務器,而後它會轉發全部的http請求和響應。Fiddler 是以代理web 服務器的形式工做的,它使用代理地址:127.0.0.1,端口:8888。網絡請求走fiddler,fiddler從中攔截數據,因爲fiddler充當中間人的角色,因此能夠解密https。所以,它比通常的firebug或者是chrome自帶的抓包工具要好用的多。不只如此,它還能夠支持請求重放等一些高級功能。它還能夠支持對手機應用進行http抓包的。本文就是手機抓包。網絡
瀏覽器的代理設置默認是關着的,win7谷歌瀏覽器「設置--高級--系統--打開代理服務器--局域網設置--代理服務器」勾上。代理開關爲開:能夠抓到包,代理開關爲關:抓不到包。ide
前提條件:
1).電腦須要安裝Fiddler
2).測試手機須要支持Wifi
3).測試手機與電腦須要同一網絡
4).所測APP需支持代理 工具
3、設置Fiddler測試
1.(1)電腦端打開安裝好的的fiddler,打開Tools-Options3d
(2)HTTPS設置以下圖代理
(3)Connection設置以下圖,端口號設爲8888
2.手機端添加代理
注:電腦聯網和手機聯網在一個局域網,手機和電腦都是連的公司網絡
電腦的ip地址
手機端設置-WLAN中給網絡設置代理,選中鏈接的WLAN,對該網絡進行編輯,代理中選擇手動,主機名填寫電腦的ip地址(電腦cmd-ipconfig),端口寫剛剛fiddler寫的端口8888
3.手機端用瀏覽器訪問http://IP:端口,用電腦的端口和fiddler設置的端口訪問安裝證書,訪問網絡,觀察fiddler可否成功抓包。這時候通常狀況下手機網絡能訪問,抓包成功。
4.fiddler抓包手機添加代理後連不上網解決辦法:
手機設置代理後,沒法訪問網絡了,如斷網般。。。研究了半天,和同事一塊兒藉助百度的力量解決了。
(1)打開註冊表,在HKEY_CURRENT_USER\SOFTWARE\Microsoft\Fiddler2下建立一個DWORD,值設置爲80(十進制)
(2)編寫FiddlerScript rule,點擊Rules > Customize Rules,用ctr+f查找到OnBeforeRequest方法添加一行代碼
Inside the OnBeforeRequest handler*, add a new line of code:
if (oSession.host.toLowerCase() == "webserver:8888") oSession.host = "webserver:80";