Fiddler—Fiddler打斷點(bpu)
一、斷點
1.為什麼要打斷點呢?
比如一個購買的金額輸入框,輸入框前端做了限制100-1000,那麼我們測試的時候,需要測試小於100的情況下。很顯然前端只能輸入大於100的。這是我們可以先抓到介面,修改請求引數,繞過前端,傳一個小於100的數,檢查服務端的功能是否OK。
2.Fiddler可以修改以下請求
--Fiddler設定斷點,可以修改HTTP請求頭資訊,如修改Cookie,User-Agent等
--可以修改請求資料,突破錶單限制,提交任意數字,如充值最大100,可以修改成10000
--攔截響應資料,修改響應體,如修改服務端返回的頁面資料
二、斷點的兩種方式
1.before response:這個是打在request請求的時候,未到達伺服器之前
2.after response:也就是伺服器響應之後,在Fiddler將響應傳回給客戶端之前。
三、全域性斷點
1.全域性斷點就是中斷fiddler捕獲的所有請求,先設定下,點選rules-> automatic breakpoint ->before requests
2.選中before requests選項後,開啟部落格園首頁:http://www.cnblogs.com/yoyoketang/,看到如下T的標識,說明斷點成功
3.打完斷點後,會發現所有的請求都無法發出去了,這時候,點下Go按鈕,就能走下一步了
4.找到需要修改的請求後,選中該條會話,右側開啟WebFroms,這時候裡面的引數都是可以修改的了
5.修改之後點Run to Completion就能提交了,於是就成功修改了請求引數了
6.打全域性斷點的話,是無法正常上網的,需要清除斷點:rules-> automatic breakpoint ->disabled
四、單個斷點
已經知道了某個介面的請求地址,這時候只需要針對這一條請求打斷點除錯,在命令列中輸入指令就可以了
請求前斷點(before response): bpu
1. 論壇登入介面:https://passport.cnblogs.com/user/signin
2. 命令列輸入:bpu https://passport.cnblogs.com/user/signin 回車
3.請求登入介面的時候,就會只攔截登入這個介面了,此時可以修改任意請求引數
4.取消斷點,在命令列輸入: bpu 回車就可以了
響應後斷點(after requests): bpafter
1. 論壇登入介面:https://passport.cnblogs.com/user/signin
2. 在命令列輸入:bpafter https://passport.cnblogs.com/user/signin回車
3.登入部落格園,會發現已經攔截到登入後伺服器返回的資料了,此時可以修改任意返回資料
4.取消斷點,在命令列輸入: bpafter 回車就可以了
五、攔截來自某個網站所有請求
1.在命令列輸入:bpu www.cnblogs.com
2.開啟部落格園任意網頁,發現都被攔截到了
3.開啟部落格園其他網站,其它網站可以正常請求
4.說明只攔截了來自部落論壇(www.cnblogs.com)的請求
5.清除輸入bpu回車即可
六、命令列其它相關指令
Bpafter, Bps, bpv, bpm, bpu
這幾個命令主要用於批量設定斷點
Bpafter xxx: 中斷 URL 包含指定字元的全部 session 響應
Bps xxx: 中斷 HTTP 響應狀態為指定字元的全部 session 響應
Bpv xxx: 中斷指定請求方式的全部 session 響應
Bpm xxx: 中斷指定請求方式的全部 session 響應 、、同於 bpv xxx
Bpu xxx:與bpafter類似
當這些命令沒有加引數時,會清空所有設定了斷點的HTTP請求。
清屏(cls),在左下角命令列輸入cls,清空螢幕