FiddlerScript-常用总结
沒有用過Fiddler的人應該對FiddlerScript沒啥感觸,我是真心覺得FiddlerScript對測試有一定的幫助哈。
在web前端開發過程中,Fiddler是最常用的一款調試工具,那對于測試來說,對測試來說也是一大利器。在大多數情況下,通過Fiddler的菜單就可以滿足我們基本的使用,但是涉及比較復雜的場景,通過fiddler基本菜單無法滿足。這時候就可以利用FiddlerScript,
1通過斷點可以修改http請求和相應的數據,不過不可以更改http頭部,url,http相應碼等等,所以這時候FiddlerScript就可以爬上用場了。
2因為設置斷點更改http請求數據,手動查找參數,輸入,點擊重新啟動按鈕,這一系列的動作就耗費一定的時間,有時候前段判斷響應的時間比較短,還沒來得及修改完,響應時間超時,那么更改無效,所以這時候FiddlerScript實現自動修改就爬上用場了。
下面介紹貼上我常用的FiddlerScript? ,OnBeforeRequest部分
?//更改http頭文件,兩種方式都可以
?if (oSession.uriContains("172.16.0.62")) {
?????oSession.oRequest.headers["lat"]="22.547";
?//oSession.oRequest["lon"] = "114.125";
?}
?//移除某個頭文件
?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請求url
?if (oSession.uriContains("C_Account/LogOn")){
?????var geturl = oSession.url
?????geturl=geturl.Replace("111111","222222");
?????oSession.url = geturl;
?}
?//修改post請求的boby
?var strBody=oSession.GetRequestBodyAsString();
?// 用正則表達式或者replace方法去修改string
?strBody=strBody.replace("1111","2222");
?// 彈個對話框檢查下修改后的body????????????? ?
?FiddlerObject.alert(strBody);
?// 將修改后的body,重新寫回Request中
?oSession.utilSetRequestBody(strBody);???????
?//將請求URI中http協議替換成https協議
?oSession.fullUrl = "https" + oSession.fullUrl.Substring(oSession.fullUrl.IndexOf(':'));
常用的OnBeforeResponse部分:
?//增加響應頭
?if (oSession.uriContains("C_Account/LogOn")) {
?????oSession.oResponse.headers.Add("test1","11111")
?}
?//修改響應頭
?if (oSession.uriContains("C_Account/LogOn")) {
?????oSession.oResponse.headers["Date"] = "Wed, 27 Oct 2016 03:11:15 GMT";
?}
?//移除響應頭
?if (oSession.uriContains("C_Account/LogOn")) {
?????oSession.oResponse.headers.Remove["Date"] ;
?}
?//修改http狀態碼
?if (oSession.uriContains("C_Account/LogOn")) {
?????oSession.responseCode = "404"
?}
?//修改響應boby,如修改Result值1更改為2
?if (oSession.uriContains("C_Account/LogOn")) {
?????var bobystr = oSession.GetResponseBodyAsString();
?????bobystr = bobystr.Replace("\"Result\":1","\"Result\":2");
?????oSession.utilSetResponseBody(bobystr);
?}
?//響應狀態標識顏色
?if (oSession.uriContains("C_Account/LogOn")) {
?????var reponseboby = oSession.GetResponseBodyAsString()
?????if (reponseboby.Contains("\"Result\":0")) {
?????oSession["ui-color"] = "blue";
?????}
?} ??????
轉載于:https://blog.51cto.com/4297765/1866738
總結
以上是生活随笔為你收集整理的FiddlerScript-常用总结的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 做梦梦到蛇妖是怎么回事
- 下一篇: 硬链接与软连接