fiddler常用功能


原理

Fiddler是一個http協議調試代理工具,它能夠記錄並檢查所有你的電腦和互聯網之間的http通訊,設置斷點,查看所有的“進出”Fiddler的數據(cookie,html,js,css等)。

fiddler下載、安裝

下載

地址:www.telerik.com/fiddler

安裝

 

啟動

 

啟動后的界面,包含:工具欄、請求列表、命令行、請求詳情、響應詳情

 

fiddler基礎配置

默認監聽端口為8888

勾選Allow remote computers to connect,表示允許遠程連接(別的機器把HTTP/HTTPS請求發送到Fiddler上來)

fiddler默認只抓取http協議的請求,要抓取https協議的請求,需要做如下配置:

選中"Decrpt HTTPS traffic",fiddler就可以抓取https請求

首次勾選,會彈出兩個對話框,是否信任fiddler證書和安全提示

否信任fiddler證書,點擊【Yes】

安全提示,點擊【是】

配置完成后,重啟fiddler

fidller抓包默認用IE,IE不用做配置

打開fiddler,再打開IE的設置,可以看到,安裝完fiddler后,默認也將IE的代理設置好了

關閉fiddler,代理自動被關閉

常用功能

清除左側請求列表

過濾

方式一:

方式二:

隱藏或者顯示配置的hosts

多個hosts之間用分號分割

顯示內網、外網,這個用得少

web端抓包(http&https)

web端抓取http

設置過濾,只顯示url中包含localhost的請求

啟動本地tomcat服務,瀏覽器訪問:http://localhost:8580/

雙擊下面這個請求

右側上方顯示請求詳情,下方顯示響應詳情

web端抓取https

設置過濾

瀏覽器訪問:https://www.baidu.com/

部分圖標含義

清除圖片

雙擊上面第一個請求

app端抓包(http&https)

以ios舉例

完成fiddler的基礎配置(見本篇第二節)

app端抓取http

手機和電腦在同一局域網

查看電腦ip

手機設置代理

設置過濾

手機訪問電腦上的tomcat,電腦ip:8580,即:192.168.0.102:8580

app端抓取https

打開瀏覽器,輸入電腦ip:8888,即:192.168.0.102:8888

點擊上面的FiddlerRoot certificate超鏈接,下載證書

手機上安裝證書

設置--通用--關於本機--證書信任設置,開啟fiddler證書的信任

手機訪問百度

 

模擬弱網低速

模擬低速網絡情況下頁面、APP的顯示與交互情況,比如響應時間過長時是否有彈出網絡不好的提示、頁面crash以及顯示錯亂、session是否一致等

搜索:m_SimulateModem

默認,發送每KB延時300ms,接收每KB延時150ms

可以都設置為30000毫秒

變成黃色

ctrl+s保存后,變為綠色

開啟限速

一直轉圈

下面圖標表示正在從服務器下載響應

測試結束后取消限速

請求數據篡改

Fiddler中設置斷點修改Request

設置斷點可以修改httpRequest的任何信息(包括host、cookie、表單中的數據)。

設置斷點有兩種方法:

  第一種:打開Fiddler,點擊Rules -> Automatic Breakpoint -> Before Requests(這種方法會中斷所有的會話),取消方式:點擊Rules -> Automatic Breakpoint -> Disabled

  第二種: 在命令行中輸入命令: bpu www.baidu.com (這種方法只會中斷www.baidu.com),取消方式:在命令行中輸入命令 bpu

舉例:

瀏覽器訪問jenkins:http://ip:8580/jenkins/login

打開Fiddler,點擊Rules -> Automatic Breakpoint -> Before Requests

輸入賬號密碼(密碼是錯誤的密碼),點擊登錄

fiddler能中斷這次會話,雙擊被中斷的會話

點擊Inspectors tab下的WebForms

修改密碼為test1234,然后點擊Run to Completion

然后就能登錄成功

Fiddler中設置斷點修改Response

  第一種:打開Fiddler,點擊Rules -> Automatic Breakpoint -> After Response (這種方法會中斷所有的會話),取消:點擊Rules-> Automatic Breakpoint -> Disabled

  第二種: 在命令行中輸入命令: bpuafter www.baidu.com (這種方法只會中斷www.baidu.com),取消:在命令行中輸入命令 bpuafter。 

先設置fiddler,打開fiddler,點擊Rules -> Automatic Breakpoint -> After Response

瀏覽器訪問:http://ip:8580/jenkins/login

修改響應內容,添加如下內容

頁面返回

但是這樣容易造成請求超時,可以用AutoResponder。

AutoResponder替換源資源

目的:請求百度首頁,返回https://www.cnblogs.com/UncleYong/

將左側的請求拖動到右側

此時,瀏覽器訪問百度首頁,會重定向到:

不使用該規則,取消勾選

或者移除

mock

fiddler_mock.txt

{"code":"0", "message":"success", "content":{"user":"uncleyong","url":"https://www.cnblogs.com/UncleYong/"}}

訪問百度首頁

另外,還可以用正則匹配

前綴為“EXACT:”表示完全匹配(大小寫敏感)

無前綴表示基本搜索,表示搜索到字符串就匹配

前綴為“NOT:”表示發現就不匹配

前綴為“REGEX:”表示使用正則表達式匹配 

fiddler模擬http請求

無參

get有參

post

另外,可以將左側請求行中需要的請求拖拽至請求構造欄中,修改相應參數,執行調試接口

 

聲明:部分圖片來源於網絡,如有侵權,請聯系刪除


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM