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. Java的EOF标识?

     这篇是关于JAVA中EOF标识的讲解,之前在工作上碰到过一个问题,有人问过,不能通过判断EOF来知道文件有没有读取完毕吗?其实,还真不能.  直接从JDK接口文档入手,以FileInputStrea ...

  2. python连接数据库查询

    import sqlite3 as db conn = db.connect(r'D:/data/test.db') print ('Opend database successfully \n') ...

  3. 手把手教你搭建Pytest+Allure2.X环境详细教程,生成让你一见钟情的测试报告(非常详细,非常实用)

    简介 宏哥之前在做接口自动化的时候,用的测试报告是HTMLTestRunner,虽说自定义模板后能满足基本诉求,但是仍显得不够档次,高端,大气,遂想用其他优秀的report框架替换之.一次偶然的机会, ...

  4. 运算符 字符串 for循环

    1. 运算符 1.1赋值运算符 = += -= *= /= //= %= **= 1.2比较运算符 < > = <= == != 1.3成员运算符 in not in 1.4逻辑运算 ...

  5. scalikejdbc 学习笔记(3)

    重用connection: package com.citi.scalikejdbc import scalikejdbc._ import scalikejdbc.config._ object C ...

  6. Bitmap简介

    1.  BitMap Bit-map的基本思想就是用一个bit位来标记某个元素对应的Value,而Key即是该元素.由于采用了Bit为单位来存储数据,因此在存储空间方面,可以大大节省.(PS:划重点 ...

  7. C#的FTP服务器源代码

    using System; using System.Collections.Generic; using System.ComponentModel; using System.Data; usin ...

  8. .netCore+Vue 搭建的简捷开发框架 (4)--NetCore 基础 -2

    上节中,我们初步的介绍了一下NetCore的一些基础知识,为了控制篇幅(其实也是因为偷懒),我将NetCore 基础分为两部分来写. 0.WebAPI 项目的建立 1..NetCore 项目执行(加载 ...

  9. 移动端meta设置大全

    声明文档使用的字符编码:  <meta charset='utf-8'> 强制让文档与设备的宽度保持1:1,对页面设置不能进行缩放: <meta name="viewpor ...

  10. 初识Django,了解一下大概流程

    学习Django一个礼拜了,对其有了一个大概的了解,自己画了一个简单的图,虽然有点丑,但是基本上已经把自己所想已经表达 写完这篇随笔之后发现自己逻辑表述的有点不太清晰,有点乱,哪里不对,希望各位指正 ...