Fiddler 突然不能抓取請求了怎麼辦
作為一名測試或開發人員,如果你的Fiddler突然不能抓取請求了,想必一定是非常苦惱。某人最近遭遇了 Web端瀏覽器 無法抓取Https請求,手機端瀏覽器無法抓取全部請求等種種問題,再此總結下,希望能幫助有問題的童鞋。
如果你的Fiddler 突然不能抓取請求了,可以從以下幾個角度試試看:
Web瀏覽器的請求,Fiddler不能抓取的解決方法:
1、是否有新安裝代理相關的外掛?
如有安裝管理代理的外掛,外掛會遮蔽Fiddler的設定,此時把外掛禁掉、或者設定預設的代理就可以解決了。
2、Chrome瀏覽器訪問任何一個Https的連結 都提示不安全,每個連結都要反覆點選信任並前往不安全的連結,如下圖所示。
雖然關閉Fiddler可以解決這個問題,但顯然不是我們想要的結果。
這種情況的發生是因為Chrome 不信任 Fiddler的根證書,需要去更換證書。
Fiddler直接提供了不同攔截證書,這個時候的選擇Tools——Options——Https——點選藍色的證書連結,進行更換。
更換完成後還需重置Fiddler的證書。具體的位置在 Tools——Options——Https——Actions——Reset All Certificates
如果你的證書被誤刪,導致瀏覽器無法訪問https連結,可以直接Reset一下。
這裡 訪問 Https的同學也可以對...from all processes 這個選項注意,如果僅選擇了從客戶端抓取,在Web瀏覽器上同樣不會被捕捉請求,from all processees 就是獲取到全部請求的意思,可預設選擇。
手機端瀏覽器的請求,Fiddler不能抓取的解決方法:
1、Fiddler是否開啟 客戶端請求抓取?
Tools——Options——Connections,裡面的Allow remote computers to connect 一定要勾選。修改後,注意需要重新開啟Fiddler。
2、Fiddler 是否被准許監聽8888埠?
CMD命令列裡 執行 netstat -anop tcp 命令,可以檢視 Fiddler是否正常監聽預設的8888埠,如果服務沒有開啟,同樣在Tools——Options——Connections裡,修改埠號,如上圖的顯示。修改後 仍然要記得關閉重新開啟Fiddler才生效。
當埠過多時,可根據netstat -ano|findstr "埠號",檢視Fiddler是否成功佔用當前埠號。
我們可以從上圖中發現埠8889被6900的程序所佔用,那tasklist|findstr "6900" 就可以定位到 當前佔用這個埠號的程序就是Fiddler。
3、防火牆被攔
防火牆或者一些360類似的防毒軟體,我們可以在防火牆下設定為fiddler通過。
iOS 10.3 Fiddler突然不能抓取Https的連結的解決方法:
設定——通用——關於本機——證書信任設定
iOS 10.3以後,需要手動對證書進行信任,否則無法獲取https的請求,不知道的很坑有木有。
Fiddler 攔截證書:
http://www.telerik.com/blogs/understanding-fiddler-certificate-generators
Chrome 官網回答不支援Fiddler的解決方案:
https://textslashplain.com/2017/03/10/chrome-deprecates-subject-cn-matching/
Fiddler 抓取連結配置的基本教程:
https://i.wanz.im/2013/04/30/debugging_http_request_with_fiddler/
作者:紫Qi
連結:https://www.jianshu.com/p/ead1e301d194
來源:簡書
著作權歸作者所有。商業轉載請聯絡作者獲得授權,非商業轉載請註明出處。