它通过代理的方式获取程序http通讯的数据,可以用其检测网页和服务器的交互情况,能够记录所有客户端和服务器间的http请求,支持监视、设置断点、甚至修改输入输出数据等功能。
Fiddler工作原理
Fiddler是以代理web服务器的形式工作的,它使用代理地址:127.0.0.1,端口:8888. 当Fiddler启动后将自己变成一个代理服务器,这个代理服务器默认监听127.0.0.1:8888.然后打开IE的时候,IE浏览器会以127.0.0.1:8。 退出的时候它会自动注销代理,这样就不会影响别的程序。不过如果Fiddler非正常退出,这时候因为Fiddler没有自动注销,会造成网页无法访问。参考fiddler工作原理和代理设置,Fiddler工作原理
默认是不拦截HTTPS协议的,需要手动打开。
工具栏打到工具->选项->Https页签->勾选 捕获HTTPS连接
一般能支持HTTP代理的任意程序的数据包都能被Fiddler嗅探到,Fiddler的运行机制其实就是本机上监听8888端口的HTTP代理。 Fiddler启动的时候默认IE的代理设为了127.0.0.1:8888,而其他浏览器是需要手动设置的,所以将浏览器的代理改为127.0.0.1:8888就可以监听数据了。
设置->工具->Internet选项->连接->局域网设置->高级,设置如下
试试能弄抓到包,如果不能重启Fiddler或浏览器。若还是不行,请重启电脑。肯定可以。
在菜单栏找到打开菜单->选项->拉到最底部,在网络设置分类下点击设置
->弹出窗口里,有手动代理配置和自动代理配置URL,如下图
自动回复器更多用于模拟后台返回数据。
界面介绍请参考fiddler选项卡-AutoResponder(自动响应).
需要注意的是,启用规则和不匹配的请求通过都要选中。
以自己开发的系统里查寻计量单位的接口http://192.168.1.243:85/api/uoms/all为例,返回的是本系统所有的计量单位结果。
{
"code" : 0,
"data" : [ {
"uomName" : "米",
"uid" : "504979207718174720"
}, {
"uomName" : "台",
"uid" : "505030634121461760"
}, {
"uomName" : "吨",
"uid" : "505041728084901888"
}, {
"uomName" : "千克",
"uid" : "506477345104723968"
} ]
}
将上面的数据保存为uom-sall-data.txt
左侧选中会话(session)->右侧选中自动回复器选项卡->选中启用规则和不匹配的请求通过->点击添加规则按钮,效果如下
最后点击保存,上面就配置完成了。选中会话(session)右键->重新执行->补发请求。返回的结果就是上面的uom-sall-data.txt文本里信息,如果我们修改文件里数据,返回的数据就是修改后的数据。比如修改为如下数据
{
"code" : 0,
"data" : [ {
"uomName" : "厘米",
"uid" : "504979207718174720"
}, {
"uomName" : "条",
"uid" : "505030634121461760"
}, {
"uomName" : "吨",
"uid" : "505041728084901888"
}, {
"uomName" : "kg",
"uid" : "506477345104723968"
} ]
}
组合器就是解析会议(session)的详情,然后自己可以编辑,组合成一个新的请求,点击执行即可发送请求。
选中一个会议,拖拽到右侧的组合器下,如下图
可以看到,它是一个POST请求,携带了{“folderName”:“3”}数据。请求头和请求body包含的内容都显示出来,我们可以编辑这个请求头和body,点击执行(action)即可模拟发送请求。
-------------未完待续
-------------------------