Fiddler 菜单功能 Host配置 请求伪造 接口调试

菜单功能:

  Fiddler工具栏上每个按钮的功能只要鼠标停留在按钮上面就会出现英文描述的功能。

  小气泡:增加备注,点击气泡即可对下面捕捉到的会话增加备注(很少使用)

  Replay回放按钮:较常用,捕捉到一个会话后想回放这个会话,点这个按钮即可。

  remove按钮:清空监控面板,下面还附有很多remove规则,可按照需要选择相应的remove内容,比如Remove all 清除所有; Images是清除所有图片请求等。

  go按钮:用于断点调试Debug,类似于Eclipse调试代码的F6,下图红圈中的位置
    1、点击一下会出现一个蓝色向上的箭头,此时的意思是截获发送request的时会有一个断点,可以点击go按钮继续往下走
    2、再点击一下会出现一个向下的绿色箭头,此时的意思是截获request返回时会有一个断点

  Stream按钮:fiddler代理模式流模式与缓冲模式之间切换,默认是缓冲模式,按下即为流模式。
    缓冲模式:当一个HTTP请求的所有内容全部返回给Fiddler时候才在界面展示出来;
    流模式:Fiddler实时展示返回的内容

  Decode按钮:解压请求,将HTTP返回的内容全部解压出来,方便查看。

  Keep sessions: 保持sessions会话,默认为保持全部,按照你需求的大小,电脑内存的大小选择保持多少会话,毕竟越多约占用电脑资源。

  Any Process: 过滤请求,可以指定只抓取某个也面或者浏览器的请求,操作方式:按住靶心按钮,出现十字状,按住鼠标拖动到目标浏览器界面,可看到浏览器界面变成黑色,方开鼠标后按钮处会出现你只捕获的目标进程编号。

  Find 查找功能:在众多会话中查找你需要的信息,上面有一些辅助条件,比如选择高亮颜色之类的。

  Save 保存按钮:将所有的请求保存到saz文件下,可以再次打开使用。

  照相机:保存截图

  Browes: 快速启动浏览器按钮,下拉菜单里面有各种本机装有的浏览器,比如IE,Chrome,Firefox等

  Clear Cache:清除浏览器缓存

  TextWizard: 编码/解码问本内容,比如URL关键字解码/编码,Base64/JS String之类的解码,编码

  Tearoff: 分离面板,将左边的会话面板与右边的面板分离,浮窗,取消分离的话是直接关闭分离出来的面板即可

  控制台:可以在其中输入命令行,比如输入help,就会在浏览器中打开常用的命令

  Capturing: 控制Fiddler是否在工作,显示Capturing表示工作,空白表示不截取任何请求。

  Web Browsers:过滤浏览器会话。其右边的数字是当前展示的所有会话数量。

 

控制面板使用:

  Statistics: 一个会话的数据统计信息,显示一些性能指标(时间),可以为优化提供依据
  RTT:请求往返时间,是衡量请求性能的重要指标,还有一个全世界范围内的平均数据
  show chart:数据可视化处理

  Inspectors: 对请求进行解包,可以查看相应的请求和响应信息

  AutoResponder: 文件代理,可以把请求的资源用本地文件代理掉,方便调试线上bug文件,具体如下:
    线上bug定位修复:(只指定某一个连接文件到指定的IP或者服务器)。
    比如:发现线上某个文件出现bug时,现在要将此文件映射到本地环境(或者是非线上开发测试环境),做代码的修改之后快速的查看效果是否与预期一致,是否生效,是否能修复bug。
    1、将请求拖入到AutoResponder中,可以看到最下方有一个EXAT,叫精准匹配(也支持正则表达式模糊匹配);
    2、在下方可以选择本地(非线上测试开发环境)文件路径来进行测试查看结果,当然也可以选择其他的一些响应,比如200,500等状态。

  Composer: 前后端接口连调,可以用来伪造请求--需要后端接口:修改里面的数据参数,伪造请求,再访问查看效果。

  Log: 记录日志
  Timeline:网站性能分析

HOST配置
  指向非线上环境进行开发测试:(将所有的文件映射到指定的IP或服务器),不用去更改电脑system中的host文件。
    Tools-->Hosts,勾上enable,
    然后下方配置一个目标IP地址 + host域名(可用的),
    save

  再发送请求Replay的时候会指向新配置的IP地址,即可查看效果。
  要关闭代理功能有两种方式
    1、取消之前的enable,save;
    2、直接退出Fiddler.

 

Fiddler不显示ServerIP:

  1、点击菜单Rules-->Customize Rules
  2、在CustomRules.js文件里Ctrl+F查找字符串“static function Main()”
  在 { 后, var today: Date = new Date();前添加以下代码即可显示ServerIP:
  FiddlerObject.UI.lvSessions.AddBoundColumn("ServerIP", 120, "X-HostIP");


Fiddler打开截获HTTPS请求后无法访问网页:
  1、在Fiddler-->Tools-->OPTIONS,-->HTTPS,勾选上Decrypt HTTPS traffic即可抓取HTTPS请求;
  2、打开抓取https后,无法打开网页, 因代理端口设置为8888,在Options-->Connections中将其修改为8080即可;此条不太正确吧. 应该是证书的问题 点Actions, Trust Root Certificate 导入证书试试.
 

Fiddler模拟请求,前后端接口调试(前端页面没有完成的情况下)
  请求的伪造:可以伪造Cookie,进行登录
  前后端连调:Composer -> 选择请求方式 GET -> copy 地址 参数-> excuete 然后查看返回数据参数。
  POST参数一般要放到RequestBody中
   参考此文: https://www.cnblogs.com/levia/p/14623531.html


Fiddler网络限速
  开发在测试网站在网速比较差的情况下的一个性能情况,基于Fiddler script插件。
  点击fiddlerScript 在代码里找到onBeforeRequest,加入下面代码:
  Static function OnBeforeRequest
  oSession["request-trickle-delay"]="3000";//请求阶段延迟3秒
  oSession["response-trickle-delay"]="3000";//响应阶段延迟3秒

此文参考网络文章修改.

posted @ 2021-04-07 20:18  Aliwall  阅读(283)  评论(0编辑  收藏  举报