Fiddler 不但能截獲各種瀏覽器發出的 HTTP 請求,也可以截獲各種智能手機發出的HTTP/ HTTPS 請求,
Fiddler 能捕獲 iOS 設備發出的請求,比如 iPhone、iPad 和 MacBook 等蘋果設備,同理,其也可以截獲 Android 和 Windows Phone 等設備發出的 HTTP/HTTPS 請求,
介紹 Fiddler 如何截獲移動端發出的 HTTP/HTTPS 請求,
一:環境準備
Fiddler 如果想要實作手機抓包,需要先滿足下面 3 個條件
(1)電腦上安裝有 Fiddler 抓包工具
(2)安裝有 Fiddler 的電腦必須跟手機處在同一個網路里,
(3)在 Fiddler 中設定好捕獲 HTTPS(具體方法請百度),
二:Fiddler截獲手機原理圖
Fiddler 作為代理服務器,可以接收遠程機器發來的 HTTP/HTTPS 協議的資料包,并且將其轉發到 Web 服務器,

三:截獲手機發出的 HTTP 包有什么作用?
1:APP 開發人員利用 Fiddler 可以截獲手機發出的 HTTP 包,從而除錯 APP 程式,
2:軟體測驗人員可以用其來測驗智能手機上的軟體,做介面測驗或者安全測驗,
3:截獲了 HTTP/HTTPS 后,可以下斷點修改 HTTP 請求和 HTTP 回應
PS:下面是重點 配置項
四:手機抓包配置
啟動 Fiddler,單擊選單欄中 Tools->Fiddler Options->Connections,選中“Allow remote computers to connect”,如圖 所示

選中后就表示允許遠程機器把 HTTP/HTTPS 請求發送到 Fiddler 上來(配置完后記得要重啟 Fiddler),同時,我們還能看到 Fiddler 的作業埠號是 8888,
獲取 Fiddler 所在機器的 IP 地址:
查看電腦的 IP 地址,按快捷鍵【Windows+R】,調出運行視窗,輸入 CMD,可以打開CMD 命令列工具;輸入命令“ipconfig”,可以找到 IP 地址,
一個電腦可能有多個網卡,注意要找到真正的 IP 地址,例如某 IP 地址是 10.0.0.11,如圖 所示,
或者在 Fiddler 中,將滑鼠放在右上方的“online”圖示上,提示資訊中也能看到 IP 地址,如圖所示,
手機上設定代理服務器:
本節內容適合所有的設備,包括 iPhone 和 Android,下面以華為手機為例進行講解,
其他品牌的手機操作方法與此差不多,具體操作步驟如下,
(1)打開手機中的設定->WLAN,找到手機當前連接的 Wi-Fi(iPhone 是單擊圖示 ,一些 Android 手機是單擊右邊的箭頭,有的是長按彈出對話框),如圖所示,

將代理改為手動,服務器主機名為 Fiddler 所在電腦的 IP 地址,服務器埠為 8888,如圖所示

單擊“連接”就可以設定成功(有些 Android 系統的手機需要重新輸入 Wi-Fi 密碼才能連接),
測驗 Fiddler 捕獲手機發出的 HTTP :
打開手機上的瀏覽器,在瀏覽器中輸入 www.163.com,163 網站用的是 HTTP 協議而不是 HTTPS 協議,查看 Fiddler 是否捕獲到了 HTTP 資料包,
打開手機上的 APP,在 APP 中進行一些操作,查看 Fiddler 是否能捕獲到 HTTP 資料包,
如果抓不到 HTTP 的包,很可能是 Windows 防火墻的問題,到控制面板中關閉防火墻后再試試,
捕獲手機上的 HTTPS
如果只是抓取手機上 APP 或者瀏覽器發出的 HTTP 請求,則不需要安裝證書,直接就能抓到,
如果需要捕獲 HTTPS 請求,則必須把 Fiddler 證書安裝到手機上,
1.打開瀏覽器 輸入ip地址加埠號會出現下圖所示,點擊下載

在安裝證書的界面,給證書取一個名字,然后單擊“確定”,系統會提示證書安裝成功,
證書安裝成功后,如果你的手機系統沒有設定密碼或者鎖屏圖案,則系統會提示你設定鎖屏圖案或者密碼,如圖 14-12 所示,
當然這種方法可能會安裝失敗,如有的手機無法按這種方式安裝證書并提示“無法安裝該證書,因為無法讀取證書檔案”,
測驗 Fiddler 捕獲手機的 HTTPS
打開手機上的瀏覽器,輸入 https://www.baidu.com,看看手機能否捕獲到百度的 HTTPS請求,
打開手機上的 APP,做一些操作,看看手機能否獲取到 APP 發出的 HTTP 和 HTTPS
請求,
在這里推薦一個我自己創建的軟體測驗交流群,QQ:642830685,群中會不定期更新軟體測驗資源,測驗面試題以及行業資訊,小伙伴們可以在群中積極交流互動,還有技術大佬為你解答問題,
轉載請註明出處,本文鏈接:https://www.uj5u.com/qita/250494.html
標籤:其他
上一篇:API和SDK是什么?有什么區別?如何測驗SDK?一篇文章統統告訴你!
下一篇:盤點.軟體測驗最常用的sql命令
