龙空技术网

58,滴滴,京东等大厂都在用的抓包工具:Fiddler

桃子软件测试 1620

前言:

如今咱们对“js调试fiddler”都比较关心,兄弟们都想要了解一些“js调试fiddler”的相关资讯。那么小编同时在网上网罗了一些关于“js调试fiddler””的相关资讯,希望你们能喜欢,同学们快快来学习一下吧!

前言:Fiddler是一个http协议调试代理工具,它能够记录并检查所有你的电脑和互联网之间的http通讯,设置断点,查看所有的“进出”Fiddler的数据(例如cookie,html,js,css等文件)。换句话说就是Fiddler可以拦截请求和响应的http代理工具。

应用场景:

1.接口调试和测试

2.线上环境调试

3.web性能分析

4.判断前后端bug

5.开发环境hosts配置

6.mock(虚拟测试)

7.弱网和断网测试等

工作原理

在用Fiddler之前需要先熟悉HTTP,一个HTTP请求和响应包含哪些内容呢?(以下数据都可以通过Fiddler抓包查看)

HTTP请求包含:请求行、请求头、空行(post)、请求正文

1.请求行:请求方法 、请求资源地址、HTTP协议和版本号

2.请求头(部分):

3.空行:告诉服务器请求头部到此为止

4.请求数据(请求体):

(1)若是get方法,没有请求体,get请求的数据在url中一起提交

(2)post方法,要提交的数据和内容,是有请求体的,post会产生两个数据包,浏览器先发送header,服务器响应100continue,浏览器再发送data,服务器响应200ok

响应包含:状态行、消息报头、响应正文三部分组成

1.状态行包含:响应码(200 )、协议(HTTP/1.1)

2.常见的响应头部信息如图:

3.响应正文:服务器返回的数据

如何用fiddler进行弱网测试?

1.Rules---Customize Rules---ctrl+f 搜索 delay 这个值控制着request-trickle-delay请求的延迟时间和response-trickle-delay响应延迟时间来模拟弱网测试

如图

修改完成后,ctrl+s保存

2.修改完这个值保存后,并不能直接生效,还需要 使用这个规则

Rules----》Performance (性能)----》勾选 Simulate modem speeds(模拟调制解调器速度),使用这个规则

勾选之后就可以进行弱网测试了,通过访问自己的请求,查看响应结果是否符合要求

如何用fiddler设置断点进行测试呢?

1.方法一(个人常用):

2.方法二:

3.请求前断点场景演示,如图

结果显示

4.请求后断点演示

设置响应后断点,进行异常操作的页面显示:

如何进行查看单个资源的响应时间呢?

1.同样的是是定制规则:Rules---》Customize Rules

2.打开之后,复制一下代码,粘贴成功后,保存并重启Fiddler生效(代码不为本人原创)

	//请求开始时间	public static BindUIColumn("Time Happen")//tab的名称,自己想改什么就改什么	function RecordTimeBegin(oS: Session){		var sResult = String.Empty;		if ((oS.Timers.ServerDoneResponse > oS.Timers.ClientDoneRequest))		{			sResult = oS.Timers.ServerGotRequest.ToString();		}		return sResult;	}	function BeginRequestTime(oS: Session)	{		if (oS.Timers != null)		{			return oS.Timers.ClientBeginRequest.ToString();     		}		return String.Empty;	}	//响应耗时	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();			//sResult = oS.Timers.ServerGotRequest.ToString();		}		return sResult;	}

3.再次访问请求时,就会显示请求开始时间和响应耗时

破解https的方法和手机抓包应用,可以私信小编“学习”进行获取

标签: #js调试fiddler