博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
手把手Fiddler掌握
阅读量:6936 次
发布时间:2019-06-27

本文共 2473 字,大约阅读时间需要 8 分钟。

手把手Fiddler掌握


目录

  • 概述
  • 功能
    • 工具条使用
    • 状态栏使用
    • 监控面板使用
  • HTTPS捕获设置
  • 实际运用
    • HOSTS设置
    • 文件代理
    • 伪造请求
    • 模拟网络请求延迟
  • 插件
  • 结语

概述

Fiddler是一款HTTP协议调试代理工具,它能够抓取记录本机所有HTTP(S)请求,通过设置断点等方法我们可以任意修改进出Fiddler的数据(cookie,html,js,css)完成测试。戳 下载。

Fiddler极大方便了我们工作中对接口的调试和数据分析,同时可以通过抓包获取许多我们想要的数据,下面我们就从使用上全面地了解Fiddler

ps:熟悉了解Http协议才能更好更快地理解掌握

功能

  • Web调试
  • 性能测试
  • Http/Https流量记录
  • Web会话处理
  • 安全测试
  • 自定义拓展性

工具条使用

对请求的操作栏目

从左到右依次介绍

  1. 对请求选中添加注释
  2. Replay : 选中请求重新提交
  3. X : 按照条件清除请求列表
  4. Go : http请求或者返回断点查看
    • 如同开发中我们常用的Debug
    • 配合状态栏中的断电开关使用
    • 支持打开请求断点和响应断点
  5. Stream : Http的流模式和缓冲模式切换
    • 默认是缓冲模式 : 请求完全结束才会返回
  6. Decode : 解压请求,更加方便查看Http请求里面的信息
  7. session保持数量
  8. 过滤请求: 使用方式如同颜色拾取器
    • 只接受选中的浏览器的请求回话
  9. Find : 条件搜索
  10. Save : 保存当前所有请求到本地
  11. 截图
  12. 计时器
  13. 选择浏览器打开请求
  14. Clear Cache : 清除缓存
  15. TextWizard : 编码解码文本内容
- 快捷的对文本编码解码(其实就是一个集成的小工具而已)复制代码
  1. Tearoff : 窗口分离
  2. 搜索:基本不用

状态栏操作

  1. 黑色条块: 命令行, 输入help 就能去官网查看详细命令
  2. Capturing : Fiddler是否启动工作
  3. 过滤回话来源
  4. Debug请求断点开关
  5. 请求条目数
  6. 当前选中的资源地址

监控面板的使用

请求详细数据监控与操作的主要模块 左半边就不做解释了,不懂的可以去复习一下Http协议 这里简述一下右半边监控面板的使用

  1. status : 性能指标统计
    • RTT : 数据请求往返时间
    • showChat : 以图表形式展现数据
  2. Inspectors : 对请求解包,数据分析最主要的模块
    • Requset : 上半部分
    • Response : 下半部分
    • 请求和响应信息一目了然

  1. AutoResponder : 资源代理
    1. 拖动目标资源地址
    2. 替换返回结果,200.。。。或者本地文件地址或者其他资源地址都ok
    3. save(记得enable rules)
  2. Composer : 伪造请求,方便调试接口(后面详细讲)
  3. Filter : 过滤器
    • 比较简单,大家可以看看英文就能使用咯
    • 对于过滤无用请求还是十分常用的
  4. TimeLine : 性能测试分析,多个接口耗时对比
  5. FiddlerScript : 请求代码化(后面详细讲)

HTTPS抓取设置

HTTPS正常是无法抓取的,需要导入安装Fiddler的证书

步骤如下: 进入Tools -> Telerik Fiddler Options 如图配置 1.

2.
3. 在
HTTPS
Actions里面选择
Export Root Certificate to Destop 生成Fiddler证书到桌面


  • 截获浏览器HTTPS请求
    1. 找到自己常用浏览器的设置
    2. 管理证书,导入自己刚刚生成的证书就ok啦
  • 截获手机HTTPS请求
    1. 获取PC的ip地址:命令行中输入:ipconfig,获取ip地址
    2. 保证设备与电脑连接的是同一个网络
    3. 手动设置手机代理地址就是本机地址,端口号就是Connections页卡下的端口号
    4. 将刚刚生成的证书导入手机并安装(部分手机因为权限问题无法直接安装,需要去安全管理界面才可以选择证书安装)

ip地址查看

手机设置代理

实际运用

HOSTS设置

对于域名映射的服务器地址动态修改配置 把网站所有文件映射到指定的服务器

  1. Tools -> HOSTS
  2. ENable.....(开启HOSTS设置)
  3. 配置格式如下: 映射到的服务器地址 替换HOSTS映射的域名
  4. 映射到我本地服务器 : 127.0.0.1 www.baidu.com

文件代理

监控面板的AutoResponder

  1. Enable Rules 开启资源代理
  2. 拖拽目标资源,默认是EXACT,也就是指定完整资源路径代理,也支持关键字和正则表达式
  3. 选择需要代理的资源(可以是其他返回码如404,500.....)
  4. save

伪造请求

监控面板的Composer

  1. 将请求拖拽进来,或者直接输入请求地址
  2. excute就可以执行请求
  3. POST请求需要在RequestBody填写参数
  4. 请求头的信息都是可以任我们改写的 这样一来,我们调试接口就十分方便了~~~

模拟网络请求延迟

FiddlerScript 作用:把请求代码化,调用如方法名可见

OnBeforeRequest

  • 添加oSession["request-trickle-delay"]="3000"; 为请求添加3秒延时
  • 添加oSession["response-trickle-delay"]="3000"; 为服务器响应添加3秒延时

记得saveScript

Rules

  1. 前面让手机连接上Fiddler就不多说了
  2. Rules -> Customize Rules
  3. ctrl+f 查找 SimulateModem ,看到具体代码块 ,修改延迟时间并且保存
  4. Performance -> Simulate Modems Speeds : 开启或者关闭延迟

插件

除此之外,Fiddler还提供了大量好用的插件供我们特定的需求 这里就不一一赘述了,有需要的朋友可以自己上去看一看


结语

Fiddler的使用到这里就差不多了 熟练使用Fiddler可以给工作或者自己个人项目带来莫大的帮助

转载地址:http://gybnl.baihongyu.com/

你可能感兴趣的文章
100多行代码实现6秒完成50万条多线程并发日志文件写入
查看>>
软件测试
查看>>
如何避免adtbundle新建项目总是产生一个appcompat_v7和fragment_main.xml
查看>>
正则表达式识别汉字
查看>>
DeleteXMl
查看>>
linux下复制
查看>>
编程题
查看>>
Android数据存储——2.文件存储_A_文本文件
查看>>
scp -P 非22端口拷贝
查看>>
Django编写RESTful API(五):添加超链接提高模型间的关联性
查看>>
扫描二维码
查看>>
[摘录]高效人士七习惯—双赢思维原则
查看>>
用javascript实现jquery的trim方法
查看>>
数据表更新
查看>>
【51NOD-5】1293 球与切换器
查看>>
操作系统原理4——存储管理
查看>>
[3D跑酷] UI事件处理系统
查看>>
Quartus II 软件生成FFT、NCO、FIR等IP核时卡住不动的解决办法
查看>>
【MyEcplise】新装系统,新装的myEcplise使用原来的workspace和maven库,项目没错但是引用的包不能正确找到...
查看>>
进程基础复习01
查看>>