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. 在wxml中直接写js代码(wxs)

    我们在h5开发中,很多时候要在html中写到js代码,这个很容易实现.但是在微信小程序开发中,是不能直接在wxml中写js代码的,因此就有了wxs.在wxml中用wxs代码,有以下几种方式(在小程序文 ...

  2. JavaScript自动播放背景音乐

    问题描述 js控制audio自动播放音乐时报错: Uncaught (in promise) DOMException 我的报错之前的代码: <audio id="myaudio&qu ...

  3. APP功能测试要点(功能测试重点)

    APP功能测试要点 1.功能性测试 根据产品需求文档编写测试用例而进行测试,包括客户端的单个功能模块以及功能业务逻辑(功能交互)如:涉及输入的地方需要考虑等价类,边界值,异常或非法等 1.1 安装与卸 ...

  4. MySQL数据库忘记密码怎么办?

    忘记MySQL数据库密码就进不去数据库,也就无法修改密码,解决方法如下: 1:打开cmd命令符,先关闭正在运行的数据库,输入如下命令: 2:打开mysql.exe和mysqld.exe所在的文件夹,复 ...

  5. Maven中jar包冲突的解决方式

    现象 创建一个maven工程,引入spring-context包. <dependency> <groupId>org.springframework</groupId& ...

  6. java架构之路-(spring源码篇)springIOC容器源码解析(上)

    我们这次来叭叭一下Spring的源码,这次博客主要来说说Spring源码,先粗略的撸一遍,下篇博客选几个重点去说,由于过于复杂,我也是看了一点点,我们先来过一遍源码,然后上流程图,最后我们再回头总结一 ...

  7. ng form组件(表单)

    tip: 数据的双向绑定(数据的双向绑定只是针对表单) 实现数据的双向绑定需要在app_module.ts(根模块)中进行注册一些东西 import {FormsModule} from '@angu ...

  8. 从零开始搭建WebAPI Core_SqlSugar管理系统 (持续更新中......)

    从零开始搭建WebAPI Core_SqlSugar管理系统 前言 本系列皆在从零开始逐步搭建,后台管理系统服务端部分,后续还会推出前端部分. 这次的目的是搭出一个功能完善的 本次系列技术栈以下几个部 ...

  9. spring-boot-devtools 热部署

    一.简单介绍 spring-boot-devtools是一个为开发者服务的一个模块,其中最重要的功能就是修改代码后自动启动springboot服务,速度比手动停止后再启动要快,节省出来的并不是手工操作 ...

  10. Javascript中Promise的简单使用

    // 函数功能:1秒以后创建一个10以内的随机整数,并判断这个数是否为偶数:如果是偶数则做一件事情,如果是奇数则做另一件事情 function doSomthing() { var promise = ...