Fiddler抓包工具的基本操作
Fiddler
——位于客户端和服务器端的HTTP代理
代理:客户端所有请求都先经过fiddler,然后转发到相应服务器
服务器端所有相应都先经过fiddler,然后发送到客户端
1. 常用的HTTP抓包工具:fiddler、charles
2. 功能
记录客户端和服务器之间的所有HTTP请求,可以针对特定的请求,分析请求数据、设置断点、调试web应用、修改请求数据、修改服务器返回数据等
3. 使用
默认监听127.0.0.1:8888
1)Firefox设置服务器代理

2)访问目标网站
F5强制刷新页面时,再次发出请求
3)录制的请求显示在session请求面板
Session——代表一次浏览器的会话

常见的请求资源:


常见的响应结果:
200:服务器响应成功
202:服务器已接受请求,但尚未处理
302:重定向,临时移动
401:请求参数非法(前端bug)
404:服务器上找不到请求的资源
405:请求方法不允许(不支持post、get等)
500:服务器发生内部错误,请求方法不允许(后端代码抛出异常)
503:服务没启动,服务器超时
HTTP常见状态码:http://blog.sina.com.cn/s/blog_69081e0601013dj8.html
过滤器:
1) 设置特定域名
录制指定域名的网站的HTTP请求,过滤其他域名请求

2) 设置发出请求的进程

3)设置正则表达式过滤请求头
录制满足正则表达式的那一部分请求

4) 根据http状态屏蔽请求

5) 设置请求类型和大小

6) 设置响应头

Statistic数据统计器
基本性能数据:DNS解析时间、建立TCP/IP连接时间消耗等

Inspectors观察器


传入参数及响应结果

Composer设计器

拷贝Raw中的请求信息,放到Composer的头部,请求参数放在Request Body中

点击
发出请求
更改Request Body中的请求参数值,结果做出响应改变

AutoResponder自动回复器
Fiddler可用于拦截某一请求,并重定向到本地资源。
生成环境服务器上某个css/JavaScript文件有问题需要修改时,通常需要修改文件、重新发布再验证,易影响到生产环境的稳定性。又或者在开发环境中修改文件并验证,然后发布到生产环境,安全却繁琐。
利用Fiddler可修改HTTP数据的特性,可以敏捷的基于生产环境修改并验证,确认后发布。
尽量在真实环境下调试,可最大限度的减少bug发生的可能性。
使用:
1) 将请求文件保存在本地

2)选择AutoResponder,Add Rule,重定向到本地文件

此时再发出请求,请求的是本地资源
断点调试

Before Request:发送请求后,fiddler代理中转之前,此时可以修改请求的数据
设置断点:bpu xxx(对url中包含了xxx的请求设置断点,请求在到达服务器前被中断)

再次发出请求,登录无响应

取消断点:bpu(无携带参数)

再次发出请求,登录正常响应

After Request:服务器响应之后,在fiddler将响应中转给客户端之前,此时可以修改响应断点结果
设置断点:bpafter xxx(对url中包含了xxx的请求设置断点,响应在到达客户端前被中断)


取消断点:bpafter(无携带参数)




Fiddler常用命令
Select xx:筛选出请求类型
如:select image 筛选出所有图片请求
?text:匹配出所有url中包含text的请求
>size、<size:选择响应大小符合size条件的请求
=status:选择响应状态等于给定状态status的所有请求
@host:选择包含指定host的全部请求
分析测试中的bug:
若未抓到请求:先查看过滤器的设置,若设置没问题,则可能是前台未发起后台的请求
若有正常提交的请求,查看请求的响应状态码(404,405,401,500等)
具体使用_参考地址:http://www.cnblogs.com/ink-marks/p/6363275.html
Fiddler抓包工具的基本操作的更多相关文章
- Charles是Mac的Fiddler抓包工具
windows下面我们经常使用 Fiddler 抓包工具进行代理等一系列操作.然而,在 Mac 下的 Fiddler 勉强能运行,但是其挫的都不想说它了.今天看到朋友推荐这款 Charles Mac下 ...
- Python+Requests接口测试教程(1):Fiddler抓包工具
本书涵盖内容:fiddler.http协议.json.requests+unittest+报告.bs4.数据相关(mysql/oracle/logging)等内容.刚买须知:本书是针对零基础入门接口测 ...
- Mac 下安装Fiddler抓包工具
需求 我们都知道在Mac电脑下面有一个非常好的抓包工具:Charles.但是这个只能抓代理的数据包.但是有时候想要调试本地网卡的数据库 Charles 就没办法了.就想到了在windows下面的一个F ...
- Fiddler抓取https请求 & Fiddler抓包工具常用功能详解
Fiddler抓取https请求 & Fiddler抓包工具常用功能详解 先来看一个小故事: 小T在测试APP时,打开某个页面展示异常,于是就跑到客户端开发小A那里说:“你这个页面做的有问 ...
- fiddler抓包工具总结
Fiddler 抓包工具总结 Fiddler是一个蛮好用的抓包工具,可以将网络传输发送与接受的数据包进行截获.重发.编辑.转存等操作.也可以用来检测网络安全.反正好处多多,举之不尽呀!当年学习的时候也 ...
- Python3,x:Fiddler抓包工具如何进行手机APP的数据爬取
示例一:苹果手机抓取教程 https://www.cnblogs.com/lizm166/p/8693085.html https://blog.csdn.net/cui130/article/det ...
- 移动端测试接口--Fiddler抓包工具
Fiddler抓包工具是一款免费且功能强大的数据包抓取软件.它通过代理的方式获取程序http通讯的数据,可以用其检测网页和服务器的交互情况,能够记录所有客户端和服务器间的http请求,支持监视.设置断 ...
- 【前端开发】利用Fiddler抓包工具进行本地调试
解决什么问题: 解决前端在本地联调页面 || 样式 || 脚本时经常修改服务器代码,浪费太多时间. 避免多人同时修改代码产生冲突问题.可以在本地调完代码之后,再贴到服务器上. 其实这个问题老早就开始想 ...
- Fiddler 抓包工具总结-bpafter
转摘https://www.cnblogs.com/shy1766IT/p/5199334.html Fiddler 抓包工具总结 名称 含义 # 抓取HTTP Request的顺序,从1开始,以 ...
随机推荐
- 【译】Kubernetes监控实践(2):可行监控方案之Prometheus和Sensu
本文介绍两个可行的K8s监控方案:Prometheus和Sensu.两个方案都能全面提供系统级的监控数据,帮助开发人员跟踪K8s关键组件的性能.定位故障.接收预警. 拓展阅读:Kubernetes监控 ...
- Flask基础(05)-->路由的基本定义
# 导入Flask from flask import Flask # 创建Flask的应用程序 app = Flask(__name__) # http://127.0.0.1:5000/123或者 ...
- 体验Code::Blocks下的C++编程
0.前言 在当前的行业发展和国际形势下,让更多的程序员思考跨平台编程问题.在众多的跨平台开发环境中,Code::Blocks具有独特的优势. 近二十年来,跨平台开发环境曾经如雨后春笋般产生,但是,由于 ...
- Shell之操作环境
目录 Shell之操作环境 参考 命令运行顺序 欢迎信息 环境配置 Shell之操作环境
- 基于 HTML5 WebGL 的垃圾分类系统
前言 垃圾分类,一般是指按一定规定或标准将垃圾分类储存.分类投放和分类搬运,从而转变成公共资源的一系列活动的总称.分类的目的是提高垃圾的资源价值和经济价值,力争物尽其用.垃圾在分类储存阶段属于公众的私 ...
- 教老婆学Linux运维(二)Linux常用命令指南【下】
目录 tips:紧接上一篇,Linux常用命令指南[上] 2.4 文件解压缩 2.4.1 官宣的linux压缩工具:tar tar的基本命令格式为 tar [参数选项] [文件或目录] 我们前面学的命 ...
- 2019年最新超级有趣好玩的html+css网页布局课程,前端入门基础,html5+css3零基础入门课程-黑马程序员pink老师精心录制
大家好,我是黑马程序员pink老师!! 本次视频是前端零基础入门的课程,pink老师采取有趣好玩讲法,带你快乐的学习枯燥的html+css知识,学完之后让你能快速布局pc端页面.代码也可以讲的好玩有趣 ...
- windows下安装和设置gradle
一.安装前检查 检查jdk是否已经安装 二.下载gradle 1. https://gradle.org/releases/ 2.设置gradle环境变量 3. 环境变量中增加名为GRADLE_HOM ...
- 【Java】登录验证码
Html: <input id="verifyCode" name="verifyCode" type="text" value=&q ...
- MyBatis resultType用Map 返回值中有NULL则缺少字段 返回值全NULL则map为null
这个问题我大概花了2个小时才找到结果 总共需要2个设置 这里是对应springboot中的配置写法 @select("select sum(a) a,sum(b) b from XXX wh ...