如何使用FiddlerScript

如何使用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";
     }
 }       

看完上述内容是否对您有帮助呢?如果还想对相关知识有进一步的了解或阅读更多相关文章,请关注创新互联行业资讯频道,感谢您对创新互联的支持。


当前文章:如何使用FiddlerScript
浏览地址:http://scyanting.com/article/picdoe.html