Web Debugger - Fiddler的原理及学习

what is Fiddler?

Fiddler是位于客户端和服务器端的HTTP代理,也是目前最常用的http抓包工具之一,它能够记录客户端和服务器之间的所有 HTTP请求,可以针对特定的HTTP请求,分析请求数据、设置断点、调试web应用、修改请求的数据,甚至可以修改服务器返回的数据,功能非常强大,是web调试的利器。

既然是代理,也就是说:客户端的所有请求都要先经过Fiddler,然后转发到相应的服务器,反之,服务器端的所有响应,也都会先经过Fiddler然后发送到客户端,基于这个原因,Fiddler支持所有可以设置http代理为127.0.0.1:8888的浏览器和应用程序。使用了Fiddler之后,web客户端和服务器的请求如下所示:

Fiddler是一个能够监听本地 127.0.0.1:8888端口 的 HTTP 代理服务器,任何能够设置 HTTP 代理为 127.0.0.1:8888 的浏览器和应用程序都可以使用 Fiddler。

fiddler的工作原理是什么呢?其实,每当打开fiddler的时候,它就会自动在你的电脑上把“127.0.0.1:8888”设置为代理服务器,并且fiddler会一直监听8888端口,这样的话,你的电脑上所有8888端口发出的请求或者收到的响应,都会经过这个代理服务器。

运行fiddler之后,就会在本地打开8888端口,网络数据流通就会通过fiddler进行中转,这时我们就可以监控http/https数据流的记录,并加以分析,甚至我们可以修改发送和接收数据。

Fiddler为何默认监听所有的请求?

打开fiddler4工具,第一次打开,fiddler4会自动设置自己为系统代理。IE和chrome浏览器代理都是自动开启。可以查看浏览器代理:

浏览器菜单栏上:(以IE为例)工具—>Internet选项—>连接—>局域网设置—>高级。发现IE已经自动开启了127.0.0.1:8888。

(以chrome为例)设置—>(系统)打开代理服务器—>局域网设置—>高级。发现chrome已经自动开启了127.0.0.1:8888。

因此打开fiddler4后就自动可以捕获这两个浏览器上的请求了。

Firefox浏览器是需要手动设置代理的。可以查看浏览器代理:浏览器菜单栏上:工具—>Internet选项—>连接—>局域网设置—>高级代理。发现代理并未被开启,此时手动设置127.0.0.1:8888即可。

三、自己设置浏览器代理

默认情况下Fiddler会自动开启IE、chrome等浏览器代理服务,这样的话列表中会显示很多我们实际上不需要的请求。我们可以自己来指定监听哪个浏览器。打开fiddler4工具,点击【Tools】-【Options】-【Connections】

Act as system proxy on startup:默认勾选,当启动fiddler的时候就会设置为系统代理。取消勾选,点击确认然后重启fiddler。

然后自己手动设置浏览器代理。(以IE为例)工具—>Internet选项—>连接—>局域网设置—>高级代理。手动设置127.0.0.1:8888即可。

再次查看左侧请求栏的请求数据时,发现只有IE浏览器发出的请求才会被捕获。
 

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值