溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊(cè)×
其他方式登錄
點(diǎn)擊 登錄注冊(cè) 即表示同意《億速云用戶服務(wù)條款》

如何使用FiddlerScript

發(fā)布時(shí)間:2021-11-17 15:46:42 來源:億速云 閱讀:419 作者:柒染 欄目:軟件技術(shù)

如何使用FiddlerScript,很多新手對(duì)此不是很清楚,為了幫助大家解決這個(gè)難題,下面小編將為大家詳細(xì)講解,有這方面需求的人可以來學(xué)習(xí)下,希望你能有所收獲。

沒有用過Fiddler的人應(yīng)該對(duì)FiddlerScript沒啥感觸,我是真心覺得FiddlerScript對(duì)測(cè)試有一定的幫助哈。

在web前端開發(fā)過程中,F(xiàn)iddler是最常用的一款調(diào)試工具,那對(duì)于測(cè)試來說,對(duì)測(cè)試來說也是一大利器。在大多數(shù)情況下,通過Fiddler的菜單就可以滿足我們基本的使用,但是涉及比較復(fù)雜的場(chǎng)景,通過fiddler基本菜單無法滿足。這時(shí)候就可以利用FiddlerScript,

1通過斷點(diǎn)可以修改http請(qǐng)求和相應(yīng)的數(shù)據(jù),不過不可以更改http頭部,url,http相應(yīng)碼等等,所以這時(shí)候FiddlerScript就可以派上用場(chǎng)了。

2因?yàn)樵O(shè)置斷點(diǎn)更改http請(qǐng)求數(shù)據(jù),手動(dòng)查找參數(shù),輸入,點(diǎn)擊重新啟動(dòng)按鈕,這一系列的動(dòng)作就耗費(fèi)一定的時(shí)間,有時(shí)候前段判斷響應(yīng)的時(shí)間比較短,還沒來得及修改完,響應(yīng)時(shí)間超時(shí),那么更改無效,所以這時(shí)候FiddlerScript實(shí)現(xiàn)自動(dòng)修改就爬上用場(chǎng)了。

下面介紹貼上我常用的FiddlerScript  ,OnBeforeRequest部分

 //更改http頭文件,兩種方式都可以
 if (oSession.uriContains("172.16.0.62")) {
     oSession.oRequest.headers["lat"]="22.547";
 //oSession.oRequest["lon"] = "114.125";
 }
 //移除某個(gè)頭文件
 if (oSession.uriContains("objectId=1")) {
     oSession.oRequest.headers.Remove["lat"];
 }
 //增加頭文件
 if (oSession.uriContains("172.16.0.61")) {
     oSession.oRequest.headers.Add("lat","22.548")
 }
 //host 是要寫完整
 if (oSession.host == "hstoa.wisdom-gps.com:8888") {      
 }

 if (oSession.uriContains("172.16.0.61")) {
     oSession["ui-color"] = "winered";
 }

 //修改get請(qǐng)求url
 if (oSession.uriContains("C_Account/LogOn")){
     var geturl = oSession.url
     geturl=geturl.Replace("111111","222222");
     oSession.url = geturl;
 }

 //修改post請(qǐng)求的boby
 var strBody=oSession.GetRequestBodyAsString();
 // 用正則表達(dá)式或者replace方法去修改string
 strBody=strBody.replace("1111","2222");
 // 彈個(gè)對(duì)話框檢查下修改后的body               
 FiddlerObject.alert(strBody);
 // 將修改后的body,重新寫回Request中
 oSession.utilSetRequestBody(strBody);       

 //將請(qǐng)求URI中http協(xié)議替換成https協(xié)議
 oSession.fullUrl = "https" + oSession.fullUrl.Substring(oSession.fullUrl.IndexOf(':'));

常用的OnBeforeResponse部分:

 //增加響應(yīng)頭
 if (oSession.uriContains("C_Account/LogOn")) {
     oSession.oResponse.headers.Add("test1","11111")
 }
 //修改響應(yīng)頭
 if (oSession.uriContains("C_Account/LogOn")) {
     oSession.oResponse.headers["Date"] = "Wed, 27 Oct 2016 03:11:15 GMT";
 }
 //移除響應(yīng)頭
 if (oSession.uriContains("C_Account/LogOn")) {
     oSession.oResponse.headers.Remove["Date"] ;
 }
 //修改http狀態(tài)碼
 if (oSession.uriContains("C_Account/LogOn")) {
     oSession.responseCode = "404"
 }
 //修改響應(yīng)boby,如修改Result值1更改為2
 if (oSession.uriContains("C_Account/LogOn")) {
     var bobystr = oSession.GetResponseBodyAsString();
     bobystr = bobystr.Replace("\"Result\":1","\"Result\":2");
     oSession.utilSetResponseBody(bobystr);
 }
 //響應(yīng)狀態(tài)標(biāo)識(shí)顏色
 if (oSession.uriContains("C_Account/LogOn")) {
     var reponseboby = oSession.GetResponseBodyAsString()
     if (reponseboby.Contains("\"Result\":0")) {
     oSession["ui-color"] = "blue";
     }
 }       

看完上述內(nèi)容是否對(duì)您有幫助呢?如果還想對(duì)相關(guān)知識(shí)有進(jìn)一步的了解或閱讀更多相關(guān)文章,請(qǐng)關(guān)注億速云行業(yè)資訊頻道,感謝您對(duì)億速云的支持。

向AI問一下細(xì)節(jié)

免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如果涉及侵權(quán)請(qǐng)聯(lián)系站長(zhǎng)郵箱:is@yisu.com進(jìn)行舉報(bào),并提供相關(guān)證據(jù),一經(jīng)查實(shí),將立刻刪除涉嫌侵權(quán)內(nèi)容。

AI