NO IMAGE

fildder 安裝

http://blog.csdn.net/laofashi2015/article/details/78476499

fiddler工具簡單瞭解

https://www.cnblogs.com/ink-marks/p/6363275.html

應用場景:

場景一、移動端抓包,設定和Charles相同、請求過濾

場景二、模擬弱網環境

場景三、使用fiddler重新傳送請求(可用於介面測試或者介面除錯)

 

場景四、攔截服務端返回結果,修改在客戶端資料的展示(在不修改服務端資料時,用於模擬服務端返回資料異常時的測試)

方法一、

1、選單欄 rules->AutoMatic BreakPoint->After Responses

2、在客戶單請求需要修改響應資料的介面,

3、在fiddler的右側響應檢視,切換到Textview 檢視模式下,修改資料

4、修改完成後,點選右側  綠色按鈕 Run to Completion ,檢視可客戶端顯示

存在問題,在抓包中,有部分的響應結果無法使用TextView模式中檢視,導致無法修改(待解決)

方法二、在fiddlerScript中修改指令碼,開啟指令碼新增如下程式碼,修改響應結果

    static function OnBeforeResponse(oSession: Session) {

        if (m_Hide304s && oSession.responseCode == 304) {

            oSession[“ui-hide”] = “true”;

        }

        if (oSession.fullUrl.Contains()){

            var responseStr = oSession.GetResponseBodyAsString();

            var jsonStr = Fiddler.WebFormats.JSON.JsonDecode(responseStr);

            jsonStr.JSONObject[]=””;

            var alterJsonStr = Fiddler.WebFormats.JSON.JsonEncode(jsonStr.JSONObject);

            oSession.utilSetResponseBody(alterJsonStr);

            }

    }

方法三、反向代理的方式

 

場景五、檢視服務端的請求到返回結果的時間是多少,在fiddler是有監控的,但是統計到的資料並不直觀

在CustomRules.js的class Handlers中增加

 //新增請求的響應時間

public static BindUIColumn(“Time Taken”)
           function CalcTimingCol(oS: Session){
             var sResult = String.Empty;
             if ((oS.Timers.ServerDoneResponse > oS.Timers.ClientDoneRequest))
             {
               sResult = (oS.Timers.ServerDoneResponse – oS.Timers.ClientDoneRequest).ToString();
             }
             return sResult;

           }

增加監控請求的IP詳情

在CustomRules.js的static function Main() 中增加一行:FiddlerObject.UI.lvSessions.AddBoundColumn(“Server IP”, 120, “X-HostIP”);

static function Main() {

    var today: Date = new Date();

    FiddlerObject.StatusText = ” CustomRules.js was loaded at: ” today;

    // Uncomment to add a “Server” column containing the response “Server” header, if present

    //增加請求IP監控

FiddlerObject.UI.lvSessions.AddBoundColumn(“Server IP”, 120, “X-HostIP”);

}