Fiddler是15年初,在千牛中做超級(jí)促銷(xiāo)插件時(shí),發(fā)現(xiàn)沒(méi)有root的Android機(jī)和沒(méi)有越獄的iPhone無(wú)法修改host,因此沒(méi)辦法測(cè)試。為了讓我這個(gè)磨人的PD也能看到,開(kāi)發(fā)推薦了Fiddler。而且,通過(guò)抓取手機(jī)上的http/https的請(qǐng)求,也可以幫助測(cè)試和開(kāi)發(fā)調(diào)試和排查問(wèn)題。
備注:千牛是淘寶的一個(gè)app,超級(jí)促銷(xiāo)屬于一個(gè)hybird app,基于千牛的環(huán)境開(kāi)發(fā)的。
PC上安裝Fiddler之后,可以抓取各種瀏覽器的請(qǐng)求,通過(guò)一些設(shè)置可以獲取iPhone、安卓手機(jī)、windows phone的請(qǐng)求。具體的工作原理我也不多說(shuō)(哼,絕對(duì)不是因?yàn)槲也欢甔D),主要說(shuō)下如何配置來(lái)抓取手機(jī)上的請(qǐng)求,以iPhone為例。
準(zhǔn)備工作:A.安裝Fiddler,可以去官網(wǎng)上下載;B. 手機(jī)和電腦在同一個(gè)網(wǎng)絡(luò)里。
1 對(duì)Fiddler進(jìn)行一些設(shè)置,配置完后記得要重啟Fiddler!
a. 打開(kāi)Tools > Fiddler Options >HTTPS,capture HTTPS CONNECTs下,勾選Decrypt HTTPS traffic、Ignore server certificate errors

b. 在HTTPS旁邊的Connections中,勾選Allow remote computers to connect

2. 獲取電腦的IP地址,如圖,10.211.55.3就是噠?

3. 在iPhone上安裝fiddler證書(shū)
打開(kāi)Safari,訪問(wèn)http://電腦ip:8888,我的電腦就是http://10.211.55.3:8888,點(diǎn)“FiddlerRoot certificate”,然后安裝證書(shū)。
4. 打開(kāi)iPhone>設(shè)置>Wi-Fi,找到跟電腦同一個(gè)網(wǎng)絡(luò),連接上,并在Http代理處,將電腦的IP地址輸入服務(wù)器欄,端口設(shè)置為8888。

5. 測(cè)試下電腦上是否可以抓包成功。任意打開(kāi)手機(jī)上的一個(gè)app,或者用safari打開(kāi)www.baidu.com(最常用的測(cè)試網(wǎng)絡(luò)是否連接的辦法XD),看看fiddler上是否捕獲。
6. 準(zhǔn)備就緒,現(xiàn)在只需要知道測(cè)試機(jī)的地址,在PC的hosts中綁定,綁定之后,在手機(jī)上就可以測(cè)試?yán)玻?/p>
注意:用完了, 一定要記得把IPhone上的Fiddler代理關(guān)閉, 以免IPhone上不了網(wǎng)。
PS:剛工作時(shí),壓根找不到host,順便也附上host的目錄好了:計(jì)算機(jī)>C盤(pán)>Windows>System32>drivers>etc>hosts。我會(huì)發(fā)送一個(gè)快捷方式到桌面,這樣每次改起來(lái)很方便喲,大家可以試試這么做。

另另,之前遇到過(guò)小伙伴的host修改不成功,提示權(quán)限不足。后來(lái)也找到了解決方案,這里共享下:hosts—右鍵 屬性—編輯—選擇user—設(shè)置user權(quán)限。
