寻遍天下名师终于搞懂了Fiddler的工作原理_fiddler弱网原理

先自我介绍一下,小编浙江大学毕业,去过华为、字节跳动等大厂,目前阿里P7

深知大多数程序员,想要提升技能,往往是自己摸索成长,但自己不成体系的自学效果低效又漫长,而且极易碰到天花板技术停滞不前!

因此收集整理了一份《2024年最新软件测试全套学习资料》,初衷也很简单,就是希望能够帮助到想自学提升又不知道该从何学起的朋友。
img
img
img
img
img

既有适合小白学习的零基础资料,也有适合3年以上经验的小伙伴深入学习提升的进阶课程,涵盖了95%以上软件测试知识点,真正体系化!

由于文件比较多,这里只是将部分目录截图出来,全套包含大厂面经、学习笔记、源码讲义、实战项目、大纲路线、讲解视频,并且后续会持续更新

如果你需要这些资料,可以添加V获取:vip1024b (备注软件测试)
img

正文

2.Fiddler下载和安装

Fiddler官网下载地址:https://www.telerik.com/fiddler
Fiddle证书生成器下载地址:http://www.telerik.com/docs/default-source/fiddler/addons/fiddlercertmaker.exe?sfvrsn=2
Fiddler安装注意事项:不要安装在有中文和特殊字符的目录
安装注意事项:不要安装在有中文和特殊字符的目录

3.Fiddler的工作原理:

Fiddler是以代理web服务器的形式工作的,它使用代理地址:127.0.0.1,端口:8888。当Fiddler退出的时候它会自动注销,关掉Fiddler、谷歌和IE浏览器的代理服务器会自动取消。如果Fiddler非正常退出,因为Fiddler没有自动注销,会造成网页无法访问。解决的办法是重新启动Fiddler。

四、Fiddler六大块详解

(1) Fiddler回话列表 1.请求的ID编号、 2. http响应状态码、 3.会话使用的协议、 4.请求发送到的服务器主机名、 5.数据包在服务器中的路径和文件、 6.响应body的字节数。 7.响应头信息Cache-Control的值、 8、响应头信息Content-Type的值、 9.发起请求的本地windows进程、 10.注释、 11.自定义备注。
(2) Fiddler功能页签

**Statistics页签:**通过该页签,用户可以通过选择多个会话来得到这几个会话的总的信息统计,比如多个请求传输的字节数。访问页面时选择第一个请求和最后一个请求,可获得整个页面加载所消耗的总体时间。从条形图表中还可以分别出哪些请求耗时最多,从而对页面的访问进行速度性能优化。
**inspectors页签:**它提供headers、textview、hexview,Raw等多种方式查看一条http请求的请求和响应,它分为上下两部分:上部分为请求展示,下部分为响应展示。
**AutoResponse页签:**它可以抓取在线页面保存到本地进行调试,大大减少了在线调试的困难,可以让我们修改服务器端返回的数据,例如让返回都是404的数据包读取本地文件作为返回内容。
**composer页签:**支持手动构建和发送HTTP,HTTPS和FTP请求,我们还可以从回话列表中拖曳回话,把它放到composer选项卡中,当我们点击Execute按钮时则把请求发送到服务器端。
**FiddlerScripts页签:**打开Fiddler脚本编辑。
**log页签:**打印日志
**Filters页签:**过滤器可以对左侧的数据流列表进行过滤,我们可以标记、修改或隐藏某些特征的数据流。
**Timeline页签:**时间轴,也称为Fiddler的瀑布图,展示网络请求时间的功能。每个网络请求都会经历域名解析、建立连接、发送请求、接受数据等阶段。把多个请求以时间作为X轴,用图表的形式展现出来,就形成了瀑布图。在左侧会话窗口点击一个或多个回话,Timeline 便会显示指定内容从服务端传输到客户端的时间。

(3)菜单栏
File菜单

1、Capture Traffic:可以控制是否把Fiddler注册为系统代理。
2、New Viewer:打开一个新的fiddler窗口
3、Load Archive:用于重新加载之前捕获的以SAZ文件格式保存的数据包。
4、Save:支持以多种方式把数据包保存到文件中。
5、Import Sessions…:支持导入从其他工具捕获的数据包,也支持导入以其他格式存储的数据包。
6、Export Sessions…:把Fiddler捕捉到的回话以多种文件格式保存。
7、Exit:取消把Fiddler注册为系统代理,并关闭Fiddler。

Edit菜单

1、Copy:复制会话。
2、Remove:删除会话。
3、Select All:选择所有会话。
4、Undelete:撤销删除会话。
5、Paste as Session把剪贴板上的内容粘贴成一个或多个模拟的会话。
6、Mark:选择一种颜色标记选中会话。
7、Unlock for Editing 解锁会话。
8、Find Session…打开Find Session窗口,搜索捕获到的数据包。

Rules菜单

1、Hide Image Request:隐藏图片回话。
2、Hide CONNECTS:隐藏连接通道回话。
3、Automatic Breakpoints:自动在[请求前]或[响应后]设置断点。Ignore Image触发器控制这些断点是否作用于图片请求。
4、Customize Rules…:打开Fiddler脚本编辑窗口。
5、Require Proxy Authentication:,要求客户端安装证书。该规则可以用于测试HTTP客户端,确保所有未提交Proxy-Authorization请求头的请求会返回HTTP/407响应码。
6、Apply GZIP Encoding:只要请求包含具有gzip标识的Accept-Encoding请求头,就会对所有响应使用GZIP HTTP进行压缩(图片请求除外)。
7、Remove All Encoding:删除所有请求和响应的HTTP内容编码和传输编码
8、Hide 304s:隐藏响应为HTTP/304 Not Modified状态的所有回话。
9、Request Japanese Content:选项会把所有请求的Accept-Encoding请求头设置或替换为ja标识,表示客户端希望响应以日语形式发送。
10、User-Agents:把所有请求的User-Agent请求头设置或替换成指定值。
11、performance:模拟弱网测试速度。

Tools菜单

1、Options…:打开Fiddler选项窗口。
2、WinINET Options…打开IE的Internet属性窗口
3、Clear WinINET Cache:清空IE和其他应用中所使用的WinINET缓存中的所有文件。4、Clear WinINET Cookies:清空IE和其他应用中所发送的WinINET Cookie
5、TextWizard…:选项会启动TextWizard窗口,对文本进行编码和解码。
6、Compare Session:比较回话。
7、Reset Script:重置Fiddler脚本。
8、Sandbox:打开http://webdbg.com/sandbox/
9、View IE Cache:打开IE缓存窗口。
View菜单
1、Show Toolbar:控制Fiddler工具栏是否可见
2、Default Layout、Stacked Layout、Wide Layout三种界面布局
3、Minimize to Tray:最小化Fiddler到系统托盘(快捷键:CTRL+M )
4、Squish Session List:控制回话列表是否水平收缩。
5、AutoScroll Session list:添加新的回话时,自动滚动到回话列表底部

(4)工具栏详解:

1.备注功能
2.重新发送请求,快捷键:R键。
3.删除请求
4.当有请求前断点时,点击去发送请求。
5.流模式。(默认是缓冲模式)
6.解码
7.保持回话的数量。
8.选择你想要抓包或者监听的程序
9.查找
10.保存所有会话,文件名以.saz为扩展名
11.截图
12.计时器
13.快捷的打开IE浏览器
14.清除IE缓存
15.文本的编码解码工具
16.分离面板
17.MSDN查询
18.本机的信息

(5)状态栏详解:

1、显示的Fiddler是否处于捕捉状态(开启/关闭状态),可以点击该区域切换。
2、显示当前捕捉哪些进程。
All Processes 捕获所有进程的请求
Web Browsers 捕获 Web 浏览器的请求,应该特指 IE
Non-Browser 捕获非 Web 浏览器的请求
Hide All 隐藏所有请求
3、显示当前断点设置状态,通过鼠标点击切换。有三种:
不设置断点
所有请求在断点处被暂停
所有响应在断点处被暂停
4,显示当前共捕获了多少回话(如:300,表示共捕获了300个会话,如:10/300,表示当前选择10个会话,共捕获300个会话)。
5,第五区块,描述当前状态。
如果是刚打开Fiddler,会显示什么时间加载了CustomRules.js;如果选择了一个会话,会显示该会话的URL;如果在命令行输入一个命令,就会显示命令相关信息。

(6)Fiddler命令行可以输入命令操作回话列表,常见命令有:
help 打开官方的使用页面介绍,所有的命令都会列出来。
cls 清屏 (Ctrl+x 也可以清屏)
select 选择所有相应类型的回话(如select image或select?css)。
?sometext 查找字符串并高亮显示查找到的会话。

size 选择请求响应大小小于size字节的会话。
=status/=method/@host 查找状态、方法、主机相对应的会话
1uit 退出fiddler
bpafter?xxx 中断URL包含指定字符的全部回话响应
bps?xxx 中断HTTP响应状态为指定字符的全部回话响应。
bpv?xxx 中断指定请求方式的全部回话响应
bpm?xxx 中断指定请求方式的全部回话响应。等同于bpv?xxx
bpu?xxx: 与bpafter类似。

五、Fiddler过滤器

选择Filters页签,勾选use Filters使用过滤器。
Fiddler过滤指定域名
1.第二个下拉框[-No Host Filter-]选择[Show Only The Following Hosts]只显示过滤的域名。
2.如只监控百度,在下面的输入框里填上:http://www.baidu.com

Fiddler过滤指定路径
1.勾选 Request Headers 中的[show only if URL contains]。
2.勾选Request Headers中的【Show only if URL contains】输入正则:REGEX:(?insx).*.?http://baidu.com/home.*
只显示路径为:http://baidu.com/Home 的数据包。

Fiddler过滤指定文件格式
1.勾选Request Headers中的【Hide if url contains】过滤项,
2.在后面输入:REGEX:(?insx)/[^?/]*.(css|ico|jpg|png|gif|bmp|wav|js)(?.*)?$

六、Fiddler 对于WEB项目的抓包和改包项目实战

打开Fidder会自动抓包,如果想要改包的话则在AutoResponder页签,如下图:

七、Fiddler弱网测试

网上学习资料一大堆,但如果学到的知识不成体系,遇到问题时只是浅尝辄止,不再深入研究,那么很难做到真正的技术提升。

需要这份系统化的资料的朋友,可以添加V获取:vip1024b (备注软件测试)
img

一个人可以走的很快,但一群人才能走的更远!不论你是正从事IT行业的老鸟或是对IT行业感兴趣的新人,都欢迎加入我们的的圈子(技术交流、学习资源、职场吐槽、大厂内推、面试辅导),让我们一起学习成长!
入研究,那么很难做到真正的技术提升。**

需要这份系统化的资料的朋友,可以添加V获取:vip1024b (备注软件测试)
[外链图片转存中…(img-BP9xwsOd-1713213598221)]

一个人可以走的很快,但一群人才能走的更远!不论你是正从事IT行业的老鸟或是对IT行业感兴趣的新人,都欢迎加入我们的的圈子(技术交流、学习资源、职场吐槽、大厂内推、面试辅导),让我们一起学习成长!

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值