赞
踩
官网链接:https://www.telerik.com/
Fiddler Classic(经典版),这个版本是免费的,不过只能在Windows上使用。
Fiddler Everywhere可以在所有平台使用,并且相当于Fiddler Classic+postman,但是是收费的。
如果只作为抓包工具经典版就够用了,可以直接点击下方链接前往下载页面。
下载链接:https://www.telerik.com/download/fiddler
填好信息之后勾选这两项,点击下载。
点击同意后选择安装路径安装。
界面左侧Web Sessions会话列表中的是HTTP数据包。
界面右侧Inspectors用于查看会话的内容,上边是Request请求信息,下边是Response响应信息。
左下角空白处点击变成Capturing会开始抓包
字段说明
名称 | 含义 |
---|---|
# | 抓取HTTP Request的顺序,从1开始,以此递增 |
Result | HTTP状态码 |
Protocol | 请求使用的协议,如HTTP/HTTPS/FTP等 |
Host | 请求地址的主机名 |
URL | 请求资源的位置 |
Body | 该请求的大小 |
Caching | 请求的缓存过期时间或者缓存控制值 |
Content-Type | 请求响应的类型 |
Process | 发送此请求的进程:进程ID |
Comments | 允许用户为此回话添加备注 |
Custom | 允许用户设置自定义值 |
图标 | 含义 |
请求已经发往服务器 | |
已从服务器下载响应结果 | |
请求从断点处暂停 | |
响应从断点处暂停 | |
请求使用 HTTP 的 HEAD 方法,即响应没有内容(Body) | |
请求使用 HTTP 的 POST 方法 | |
请求使用 HTTP 的 CONNECT 方法,使用 HTTPS 协议建立连接隧道 | |
响应是 HTML 格式 | |
响应是一张图片 | |
响应是脚本格式 | |
响应是 CSS 格式 | |
响应是 XML 格式 | |
响应是 JSON 格式 | |
响应是一个音频文件 | |
响应是一个视频文件 | |
响应是一个 SilverLight | |
响应是一个 FLASH | |
响应是一个字体 | |
普通响应成功 | |
响应是 HTTP/300、301、302、303 或 307 重定向 | |
响应是 HTTP/304(无变更):使用缓存文件 | |
响应需要客户端证书验证 | |
服务端错误 | |
会话被客户端、Fiddler 或者服务端终止 |
默认只抓取HTTP协议的网页,想抓取HTTPS则需要:
FIddler断点功能就是将请求截获下来,但是不发送,此时可以做一些更改操作。
命令 | 对应请求项 | 介绍 | 示例 |
---|---|---|---|
? | All | 问号后边跟一个字符串,可以匹配出包含这个字符串的请求 | |
> | Body | 大于号后面跟一个数字,可以匹配出请求大小,大于这个数字请求 | >1000 |
< | Body | 小于号跟大于号相反,匹配出请求大小,小于这个数字的请求 | <100 |
= | Result | 等于号后面跟数字,可以匹配HTTP返回码 | =200 |
@ | Host | @后面跟Host,可以匹配域名 | @www.baidu.com |
select | Content-Type | select后面跟响应类型,可以匹配到相关的类型 | select image |
cls | All | 清空当前所有请求 | cls |
dump | All | 将所有请求打包成saz压缩包,保存到“我的文档\Fiddler2\Captures”目录下 | dump |
start | All | 开始监听请求 | start |
stop | All | 停止监听请求 | stop |
断点命令 | |||
---|---|---|---|
bpafter | All | bpafter后边跟一个字符串,表示中断所有包含该字符串的请求 | bpafter baidu(输入bpafter解除断点) |
bpu | All | 跟bpafter差不多,只不过这个是收到请求了,中断响应 | bpu baidu(输入bpu解除断点) |
bps | Result | 后面跟状态吗,表示中断所有是这个状态码的请求 | bps 200(输入bps解除断点) |
bpv / bpm | HTTP方法 | 只中断HTTP方法的命令,HTTP方法如POST、GET | bpv get(输入bpv解除断点) |
g / go | All | 放行所有中断下来的请求 | g |
web网页、手机APP抓包
修改服务请求与响应
前端性能分析及优化
模拟弱网测试
进地铁、上公交、进电梯等,如果app没有对各种网络异常进行兼容处理,那么用户可能在日常生活中遇到APP闪退、ANR、数据丢失等问题。
启动模拟调制解调器速度来模拟弱网
Customize Rules(Ctrl+R)自定义规则
if (m_SimulateModem) {
// Delay sends by 300ms per KB uploaded.
oSession["request-trickle-delay"] = "300";
// Delay receives by 150ms per KB downloaded.
oSession["response-trickle-delay"] = "150";
}
在上述函数中用Math.random()方法可以模拟波动的网络
if (m_SimulateModem) {
var t = int(Math.random()*500)
// Delay sends by 300ms per KB uploaded.
oSession["request-trickle-delay"] = ""+ ( 2 * t );
// Delay receives by 150ms per KB downloaded.
oSession["response-trickle-delay"] = "" + t;
}
延迟参数
网络环境 | 上/下行带宽(kbps) | 上/下行丢包率(%) | 上/下行延迟(ms) | DNS延迟(ms) | 备注 |
---|---|---|---|---|---|
2G | 20/50 | 0/0 | 500/400 | 0 | |
3G | 330/2000 | 0/0 | 100/100 | 0 | |
4G | 40000/80000 | 0/0 | 15/10 | 0 | |
wifi | 33000/40000 | 0/0 | 1/1 | 0 | |
带宽有限环境 | 32/32 | 0/0 | 200/100 | 0 | |
低丢包率、低时延的环境(上行) | 33000/40000 | 10/0 | 100/100 | 200 | WiFi环境下即可设置测试 |
低丢包率、高时延的环境(上行) | 33000/40000 | 10/0 | 350/350 | 350 | 、、、 |
低丢包率、低时延的环境(下行) | 33000/40000 | 0/10 | 100/100 | 200 | 、、、 |
低丢包率、高时延的环境(下行) | 33000/40000 | 0/10 | 350/350 | 350 | 、、、 |
低丢包率、低时延的环境 | 33000/40000 | 10/10 | 100/100 | 200 | 、、、 |
低丢包率、高时延的环境 | 33000/40000 | 10/10 | 350/350 | 350 | 、、、 |
高丢包率的环境(上行) | 33000/40000 | 90/0 | 100/100 | 200 | 、、、 |
高丢包率的环境(下行) | 33000/40000 | 0/90 | 100/100 | 200 | 、、、 |
高丢包率的环境 | 33000/40000 | 90/90 | 100/100 | 200 | 、、、 |
网络超时(响应) | 33000/40000 | 0/100 | 100/100 | 200 | 、、、 |
网络超时(请求) | 33000/40000 | 100/0 | 100/100 | 200 | 、、、 |
网络超时(完全丢包) | 33000/40000 | 100/100 | 100/100 | 200 | 、、、 |
无网(飞行模式或关闭网络) |
在Fiddler中使用它,用Ctrl+R打开自定义规则,然后添加到OnBeforeRequest。
if (oSession.host=="localhost:9090"){
oSession["ui-hide"] = "true";
}
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。