接着上一篇来介绍一下Fiddler的使用哈~
1.QuickExec命令行
不知道大家还记不记得QuickExec这个是什么,没关系重新说一下,就是我们的会话窗口下边的输入框
在这个输入框中可以输一些Fiddler命令
(1) cls:清屏命令,输入该命令可以清空会话列表中的所有会话
(2) select:通过select,可以选择某一类型的HTTP会话,比如想筛选出所有网页类型的HTTP会话,可以输入 select html,输入之后,按回车键,列表中所有的html类型的会话都将被选中,想选择图片类型的,可以输入 select image并按回车键
(3) ?:这个命令可以查找出网址中包含某些自读的会话信息,比如输入‘?abc’就可以查找出包含‘abc’字符串的会话信息,并且这些会话信息被筛选出来后,会用不同颜色进行区分。
(4) help:在输入框中输入此命令,可以打开Fiddler的官方使用手册
2.Fiddler断点
Fiddler是作为代理服务器进行工作的,所以,本地应用与服务器传递的数据会先经过Fiddler,有的时候,我们想修改传递的数据,就可以用断点功能,断点的功能类型有:响应时断点和请求时断点
利用Fiddler的断点功能,我们可以达到的目的有:
(1)拦截响应数据,并进行修改;
(2)修改请求数据中的头信息,实现相应功能,例如monitor添加真实用户请求;
(3)构建请求数据,并且进行提交。
而怎么设置断点呢,就是我们接下来需要了解的内容啦
设置响应断点的方法:通过可视化操作设置和通过命令设置
可视化操作:单击Rules--->Automatic Breakpoints--->After Responses
在设置完成后我们可以访问www.qq.com,可以看到会话列表里,www.qq.com的首列图标为暂停的状态
如果要取消呢,依照刚才的操作,选择Disable就可以了
通过命令设置响应中断:bpuafter命令,比如设置中断www.cnblogs.com的响应信息,则可以输入 bpuafter www.cnblogs.com 但是这样的话,只能中断这一个网站的响应,其他的网站依旧可以访问,如果要取消的话,直接输入 bpuafter就可以了
接下来呢我们来讲一个简单的响应中断的例子,首先按照设置响应中断的方法进行中断设置,然后再浏览器中输入51学院的网站edu.51cto.com,然后可以看到Fiddler的会话列表中对应的网址被中断
单击网址后,在Fiddler后面的TextView下,可以看到响应信息为乱码
单击红色区域上方的‘Responsesbody is encoded.Clickto decode.’,然后我们可以看到对应的响应信息已经显示正常了
然后,我们可以在这个编辑框里输入自己定义的响应信息,输入完成后,单击‘Run to Completion’,我们自定义的信息就会被返回给浏览器
通过以上信息我们可以看出,响应中断的位置在图中所示位置,通过响应中断我们可以让响应信息在经过Fiddler的时候暂时停止,进行相应的处理后在返回本地。
相应的,我们不难推断出,请求时断点的位置在哪,没错,就在这
我们可以看到,请求中断会在本地应用的对应请求发送到Fiddler时暂时停止,同样可以由Fiddler进行相应处理后在转发给服务器,同样,请求中断也有两种设置方式
(1)单击Rules--->Automatic Breakpoints--->Before Requests,用这种方法的话,会将所有的网址进行请求中断,取消设置的方法同响应中断一致
(2)使用命令设置:bpu 网址 a,用这种方式设置的中断只会对设置的网址起作用,取消设置是:bpu
设置请求中断后,我们在访问网站的时候会在Fiddler处暂停请求信息的传递,网页会一直在加载中,且不显示任何内容