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抓包工具的基本操作的更多相关文章

  1. Charles是Mac的Fiddler抓包工具

    windows下面我们经常使用 Fiddler 抓包工具进行代理等一系列操作.然而,在 Mac 下的 Fiddler 勉强能运行,但是其挫的都不想说它了.今天看到朋友推荐这款 Charles Mac下 ...

  2. Python+Requests接口测试教程(1):Fiddler抓包工具

    本书涵盖内容:fiddler.http协议.json.requests+unittest+报告.bs4.数据相关(mysql/oracle/logging)等内容.刚买须知:本书是针对零基础入门接口测 ...

  3. Mac 下安装Fiddler抓包工具

    需求 我们都知道在Mac电脑下面有一个非常好的抓包工具:Charles.但是这个只能抓代理的数据包.但是有时候想要调试本地网卡的数据库 Charles 就没办法了.就想到了在windows下面的一个F ...

  4. Fiddler抓取https请求 & Fiddler抓包工具常用功能详解

    Fiddler抓取https请求 & Fiddler抓包工具常用功能详解   先来看一个小故事: 小T在测试APP时,打开某个页面展示异常,于是就跑到客户端开发小A那里说:“你这个页面做的有问 ...

  5. fiddler抓包工具总结

    Fiddler 抓包工具总结 Fiddler是一个蛮好用的抓包工具,可以将网络传输发送与接受的数据包进行截获.重发.编辑.转存等操作.也可以用来检测网络安全.反正好处多多,举之不尽呀!当年学习的时候也 ...

  6. Python3,x:Fiddler抓包工具如何进行手机APP的数据爬取

    示例一:苹果手机抓取教程 https://www.cnblogs.com/lizm166/p/8693085.html https://blog.csdn.net/cui130/article/det ...

  7. 移动端测试接口--Fiddler抓包工具

    Fiddler抓包工具是一款免费且功能强大的数据包抓取软件.它通过代理的方式获取程序http通讯的数据,可以用其检测网页和服务器的交互情况,能够记录所有客户端和服务器间的http请求,支持监视.设置断 ...

  8. 【前端开发】利用Fiddler抓包工具进行本地调试

    解决什么问题: 解决前端在本地联调页面 || 样式 || 脚本时经常修改服务器代码,浪费太多时间. 避免多人同时修改代码产生冲突问题.可以在本地调完代码之后,再贴到服务器上. 其实这个问题老早就开始想 ...

  9. Fiddler 抓包工具总结-bpafter

    转摘https://www.cnblogs.com/shy1766IT/p/5199334.html Fiddler 抓包工具总结   名称 含义 # 抓取HTTP Request的顺序,从1开始,以 ...

随机推荐

  1. 敏捷测试--之scrum--原理

    Scrum 是一个用于开发和维持复杂产品的框架 ,是一个增量的.迭代的开发过程.在这个框架中,整个开发过程由若干个短的迭代周期组成,一个短的迭代周期称为一个Sprint,每个Sprint的建议长度是2 ...

  2. 深入理解perf报告中的swapper进程

    一.前言 1.在perf监控进程的系统调用时,会出现大量swapper进程 2.官方描述该进程是当CPU上没有其他任务运行时,就会执行swapper.换句话说swapper意味着CPU啥事也没干,跑去 ...

  3. 由"跨域"引出的一个终极思想(jsonp)

    1.什么是跨域? 当协议.子域名.主域名.端口号中任意一个不相同时,都算作不同域. 跨域并不是请求发不出去,请求能发出去,服务端能收到请求并正常返回结果,但是因为浏览器存在一个"同源策略&q ...

  4. 数据分析--numpy的基本使用

    一.numpy概述 NumPy是高性能科学计算和数据分析的基础包.它是pandas等其他各种工具的基础. NumPy的主要功能: ndarray,一个多维数组结构,高效且节省空间 无需循环对整组数据进 ...

  5. JavaScipt第四天笔记

    JS笔记 1.以后遇到用构造函数创建对象就用NEW 2.用构造函数创建对象语法: var obj1 = new Object();//创建一个空对象 var obj2 = new Object({ n ...

  6. 关于win10、ubuntu双系统安装的 geom erro错误

    安装参考这个博客:http://blog.csdn.net/pop_rain/article/details/70477085 只记录安装ubuntu过程遇到的问题: 1.分区不可用(分区按以下设置) ...

  7. BERT论文解读

    本文尽量贴合BERT的原论文,但考虑到要易于理解,所以并非逐句翻译,而是根据笔者的个人理解进行翻译,其中有一些论文没有解释清楚或者笔者未能深入理解的地方,都有放出原文,如有不当之处,请各位多多包含,并 ...

  8. svg foreignObject的作用(文本换行,生成图片)

    SVG内部利用foreignObject嵌入XHTML元素 <foreignObject>元素的作用是可以在其中使用具有其它XML命名空间的XML元素,换句话说借助<foreignO ...

  9. [Note] 解决使用Workerman和apache创建wss服务时出现的 Error during WebSocket handshake: net::ERR_RESPONSE_HEADERS_TRUNCATED

    使用apache代理生成的wss服务常出现 Error during WebSocket handshake: net::ERR_RESPONSE_HEADERS_TRUNCATED 的问题,但多刷新 ...

  10. springboot结合jpa

    idea中新建springboot项目,引入spring-boot-starter-data-jpa依赖 application.yml中配置数据库连接,示例如下: spring: datasourc ...