作者:极客小俊
公众号同名: 一个把逻辑思维转变为代码的技术博主
Fiddler 断点(breakpoints)实战
所谓断点功能就是将你的请求
或者响应
截获下来,但是不发送也不返回,都放到Fiddler
这里, 这个时候你可以做很多事情,比如说,把请求报文改了,或 响应报文改了,再发送给服务器 或 客户端
请求之前执行断点
还记得前面状态栏
说过的小空白区域吗? 点击这个区域就会出现断点标志符号,如下表:
状态 | 描述 |
---|---|
意思就是请求之前断点 , 也就是当这个状态启动的时候,那么你发送的请求就会卡在这里! |
|
........... |
以上状态图标其实对应的也就是菜单栏中的Rules--->Automatic Breakpoints--->Before Request
如图
举个例子🌰
我们请求某个网站之前就先把这个断点
打开, 那么在请求的时候, 会话列表中所对应的请求也会呈现断点状态的图标, 会话列表中URL
所对应的网站也是无法显示出来的, 因为此时此刻请求
还未发到服务器
。中间被Fiddler
所截获 ,那么现在就可以做一些数据和请求
信息上的修改
然后等确定要发送到服务器
的时候就点击Run to Completion(完成)
把这一个请求发送到服务器端
就可以了 !
如图
注意
点击Run to Completion(完成)
只是把当前所选择到的会话解除断点
,让它发送到服务器端,从而响应
响应之前执行断点
状态 | 描述 |
---|---|
响应在断点处暂停, 也就是说服务器已经返回请求的数据了,但是被Fiddler 在中间卡住了,还没有到客户端这一边, 所以当我们开启了这个状态,那么在响应 之前就会卡主! |
|
............. |
当我们再次点击一下的时候就会切换到以上状态图标
其实对应的也就是菜单栏中的Rules--->Automatic Breakpoints--->After Request
而After Request(请求之后断点)
和 Before Request(请求之前断点)
正好相反
如图
举个例子🌰
还是请求某个网站之前就先把这个请求后断点
打开, 那么此时响应信息
已经返回了,但是被的时候Fiddler
卡主了, 会话列表中所对应的请求也会呈现请求后断点
的图标, 会话列表中URL
所对应的网站也是无法显示 或者 无法提取最新的页面信息, 因为此时此刻响应
还未发到客户端
。返回途中被Fiddler
所截获
那么如果可以的话,现在就能做一些响应报文
信息上的修改
然后等确定要发送到客户端
的时候就点击Run to Completion(完成)
把这一个响应
发送到客户端
就可以了 !
如图
所以在Fiddler
拿到响应信息的时候,先断
住,然后篡改一些信息之后再发给客户端
!
命令断点
大家还记得状态栏上的快速命令执行框
吗? 在这里也可以输入来执行一些命令断点
如图
那么一些常见的断点命令如下表:
命令 | 描述 | 案例 | 解除断点 |
---|---|---|---|
bpafter |
bpafter 后边跟一个字符串,表示中断 所有包含该字符串的请求 |
bpafter baidu |
输入bpafter解除断点 |
bpu |
跟bpafter 功能差不多, |
bpu baidu |
输入bpu解除断点 |
bpv |
只中断HTTP 方法的命令,HTTP方法如POST、GET
|
bpv get |
输入bpv解除断点 |
bpm |
只中断HTTP 方法的命令,HTTP方法如POST、GET |
bpm get |
输入bpm解除断点 |
go |
放行中断 下来的请求,相当于工具栏上的go按钮
|
go |
|
................................... | ......................................... |
如果我的博客对你有帮助、如果你喜欢我的博客内容,请 “👍点赞” “✍️评论” “💙收藏”
一键三连哦!
如果以上内容有任何错误或者不准确的地方,🤝🤝欢迎在下面 👇 留个言指出、或者你有更好的想法,欢迎一起交流学习❤️❤️❤️❤️❤️
网友评论