转载请标明出处:http://blog.csdn.net/zhaoyanjun6/article/details/72876628
<http://blog.csdn.net/zhaoyanjun6/article/details/72876628>
本文出自【赵彦军的博客】 <http://blog.csdn.net/zhaoyanjun6/>

Fiddler是什么?

Fiddler是一个http调试代理,它能 够记录所有的你电脑和互联网之间的http通讯,Fiddler
可以也可以让你检查所有的http通讯,设置断点,以及Fiddle
所有的“进出”的数据(指cookie,html,js,css等文件,这些都可以让你胡乱修改的意思)。 Fiddler
要比其他的网络调试器要更加简单,因为它仅仅暴露http通讯还有提供一个用户友好的格式。


Fiddler是最强大最好用的Web调试工具之一,它能记录所有客户端和服务器的http和https请求,允许你监视,设置断点,甚至修改输入输出数据,Fiddler包含了一个强大的基于事件脚本的子系统,并且能使用.net语言进行扩展。你对HTTP
协议越了解,
你就能越掌握Fiddler的使用方法。你越使用Fiddler,就越能帮助你了解HTTP协议。Fiddler无论对开发人员或者测试人员来说,都是非常有用的工具。

Fiddler的工作原理

Fiddler
是以代理web服务器的形式工作的,它使用代理地址:127.0.0.1,端口:8888。当Fiddler退出的时候它会自动注销,这样就不会影响别的程序。不过如果Fiddler非正常退出,这时候因为Fiddler没有自动注销,会造成网页无法访问。解决的办法是重新启动下Fiddler。





Fiddler 下载安装

官网下载地址:http://www.telerik.com/fiddler <http://www.telerik.com/fiddler>
下载到本地,然后安装正常的安装流程执行。

运行起来就是下图的样子:


Fiddler的运行机制其实就是本机上监听 8888 端口的 HTTP 代理。 Fiddler 启动的时候默认 IE
的代理设为了127.0.0.1:8888,而其他浏览器是需要手动设置的,所以将 Chrome 浏览器的代理改为127.0.0.1:8888 就可以监听数据了。

Chrome 浏览器如何设置代理

在浏览器的最右侧,点击 三个点 图标,然后点击设置



点击左侧的设置,然后点击 显示高级设置 。



然后找到 更改代理服务器设置。





到这里,chrome 浏览器的代理就设置好了。

开启 Https 抓包监听

Fiddler 默认下,Fiddler不会捕获HTTPS会话,需要你设置下。



【浅谈HTTPS以及Fiddler抓取HTTPS协议】 <http://www.jianshu.com/p/54dd21c50f21>

from all processes : 抓取所有的 https 程序, 包括 本机 和 手机
from browsers only : 只抓取浏览器中的 https 请求
from non-browsers only : 只抓取除了浏览器之外的所有 https 请求
from remote clients only : 抓取远程的客户端的 https ,可以代表手机

* 开启手机 Https 抓包
如果只想抓取 手机上的所有 https 请求,就应该选中 from remote clients only 。


如何用Fiddler对Android应用进行抓包

http://jingyan.baidu.com/article/03b2f78c7b6bb05ea237aed2.html
<http://jingyan.baidu.com/article/03b2f78c7b6bb05ea237aed2.html>

如何开启/关闭 抓本机的包

如果需要抓取本机请求,有 3 中方式。

* 方式 1
只需要启动程序并确保左下角为 Capturing状态 即可。



* 方式 2
按快捷键 F12 进行切换。

* 方式 3
File --> Capture Traffic 勾选。



扩展:

注意这个很有用,可以开启抓本机的包,也可以过滤本机的包。当手机开启了开启了代理,就可以把本机的包过滤掉,专注抓手机的包,此时会话列表中都是手机的包了。

清空会话列表



快捷功能



*
. 第一个是Capturing,控制捕获会话的快捷开关;

*
. 第二个是选择当前需要捕获的会话的来源程序,所有程序、浏览器、非浏览器、都不捕获选项。

*
.
第三个是会话request发送前的断点和response返回后且到浏览器前的断点,分别对应点一次,点两次该按钮(默认是空白即不设断点),request断点和response断点详情中详解

*
.后面的而是当前选中会话的一些标识和描述,如当前选中的是127个会话中的第一个, 详细url为http://www......

过滤域名


Fiddler抓包可以完成我们移动开发者的调试测试需求。但是多余的网页请求和手机的其他链接影响我们手机开发的需求。所以我们需要排除其他无用的包,只关注我们指定的域名的请求包。

* 打开fiddler,找到Filters选项并点击打开。如图所示


默认情况下,这个页面是灰色的,代表默认不过滤任何请求。现在我们勾选 Use Filters 。



* 在 Hosts 里面可以看到 No Zone Filter : 不做任何过滤 Show only Intranet Hosts : 只显示内部网络主机
Show only Internet Hosts:只显示互联网主机。


在 Hosts 第二个下拉框里面有几个选项

show only intranet hosts

参考资料

Fiddler 教程 <http://kb.cnblogs.com/page/130367/>

个人微信号:zhaoyanjun125 , 欢迎关注


友情链接
ioDraw流程图
API参考文档
OK工具箱
云服务器优惠
阿里云优惠券
腾讯云优惠券
华为云优惠券
站点信息
问题反馈
邮箱:ixiaoyang8@qq.com
QQ群:637538335
关注微信