Fiddler -工具使用介绍(附:拦截请求并修改返回数据)(转)

1、Fiddler 介绍

Fiddler 是一个使用 C# 编写的 http 抓包工具。它使用灵活,功能强大,支持众多的 http 调试任务,是 web、移动应用的开发调试利器。

css

1,功能特色

  • 同 Httpwatch、Firebug 这些抓包工具同样,Fiddler 够记录客户端和服务器之间的全部 HTTP 请求,能够针对特定的 HTTP 请求,分析请求数据、设置断点等。
  • 但 Fiddler 更为强大的是,它还能够修改请求的数据,甚至能够实现请求自动重定向,从而修改服务器返回的数据。
  • Fiddler 使用也十分方便。在打开 Fiddler 的时候,它就自动设置好了浏览器的代理,经过改写 HTTP 代理,让数据从它那经过,来监控而且截取到数据。当关闭 Fiddler 的时候,它又自动帮你把代理还原。
 

2,下载安装

直接去 Fiddler 的官网下载便可。地址: http://www.telerik.com/fiddler
 

2、http 请求抓取

1,Fiddler 启动后就自动开始工做了。

  • 使用浏览器随便访问几个页面,左侧区域就会将捕获的结果显示出来。
  • 经过点击左下角的图标能够关闭/开启抓包功能。
原文:Fiddler - 超好用的http抓包工具使用介绍(附:拦截请求并修改返回数据)

2,查看请求内容

双击某个会话请求,在右侧的 Inspectors 选项卡中能够查看该会话的内容,上半部分是请求的内容,下半部分是响应的内容。
原文:Fiddler - 超好用的http抓包工具使用介绍(附:拦截请求并修改返回数据)

3,使用 Filters 过滤请求

因为 Fiddler 会抓取全部的 HTTP 请求,这样会形成左边的窗口不断的更新,有时可能会对咱们的调试形成干扰。咱们能够经过过滤规则的设置,从而来过滤掉那些不想看到的请求。
 
(1)点击 Fiters 选项卡,勾选左上角的 Use Filters 便可开启过滤器。下方有两个最经常使用的过滤条件:Zone 和 Host:
  • Zone:指定只显示内网(Intranet)或互联网(Internet)的内容
  • Host:指定显示某个域名下的会话
原文:Fiddler - 超好用的http抓包工具使用介绍(附:拦截请求并修改返回数据)
 
(2)好比咱们只想显示与  hangge.com 的会话,能够这么设置。(若是有红框中的文字,表示修改未生效,点击便可。)
原文:Fiddler - 超好用的http抓包工具使用介绍(附:拦截请求并修改返回数据)

3、AutoResponder 用法(拦截指定请求,并返回自定义数据)

AutoResponder 容许你拦截指定规则的求情,并返回本地资源或 Fiddler 资源,从而代替服务器响应。这个在咱们平时开放调试中也是颇有用的:
  • 好比在前端开发中,若是发现服务器上某个 css/JavaScript 文件有问题,直接上去改会影响生产环境的稳定。利用 Fiddler 的 AutoResponder 功能,我能够将须要修改的文件重定向到本地文件上,这样就能够基于生产环境修改并验证,确认后再发布。
  • 再好比服务端提供了接口和数据格式给前端调用,可能因为某些缘由,接口还未开发完毕、或者返回数据有异常。为了避免影响开发进度,前端仍然能够继续调用这个接口,而后经过 Fiddler 将请求转向本地的数据文件上。

(1)好比  hangge.com 首页用到了 jQuery,假设咱们要修改这个 js。
原文:Fiddler - 超好用的http抓包工具使用介绍(附:拦截请求并修改返回数据)
(2)首先将 js 文件保存到本地(若是本地已经有这个文件,能够跳过这步)
原文:Fiddler - 超好用的http抓包工具使用介绍(附:拦截请求并修改返回数据)
(3)接着打开 AutoResponder 标签设置,勾选前面两个复选框,开启 Fiddler 的请求自动重定向功能。
  • 第一个复选框的做用是开启或禁用自动重定向功能,咱们就能够在下面添加剧定向规则了。
  • 第二个复选框框勾上时,不影响那些没知足咱们处理条件的请求。
 
原文:Fiddler - 超好用的http抓包工具使用介绍(附:拦截请求并修改返回数据)
(4)下面就要建立重定向规则了,将目标是这个 js 的 HTTP 请求重定向到本地文件。咱们能够经过“Add…”按钮手动添加规则,不过这个 URL 已经出如今咱们的 session 列表中,能够直接拖动过来。
原文:Fiddler - 超好用的http抓包工具使用介绍(附:拦截请求并修改返回数据)
(5)接着修改这个规则。点击下方的下拉框,选择“Find a file…”,就能够选择本地的文件做为返回的 body 内容。
原文:Fiddler - 超好用的http抓包工具使用介绍(附:拦截请求并修改返回数据)
(6)这里咱们选择刚才保持下来的 js 文件。这样咱们的请求重定向就设置好了。
原文:Fiddler - 超好用的http抓包工具使用介绍(附:拦截请求并修改返回数据)
(7)试着修改下本地这个 js 文件。好比咱们在开头加了个 alert 语句。
原文:Fiddler - 超好用的http抓包工具使用介绍(附:拦截请求并修改返回数据)
(8)刷新页面,从新访问就能够看到效果了。(若是浏览器有缓存,要先清下缓存)
原文:Fiddler - 超好用的http抓包工具使用介绍(附:拦截请求并修改返回数据)

4、解密 HTTPS 的网络数据

一般状况下,对于 HTTPS 请求,咱们捕获后是没法看到里面的数据。
原文:Fiddler - 超好用的http抓包工具使用介绍(附:拦截请求并修改返回数据)
不过 Fiddler 能够经过伪造 CA 证书来欺骗浏览器和服务器,从而实现解密 HTTPS 数据包的目的。大概原理就是在浏览器面前 Fiddler 假装成一个 HTTPS 服务器,而在真正的 HTTPS 服务器面前 Fiddler 又装成浏览器。
 
(1)要开启 HTTPS 解密,咱们依次点击菜单栏 Tools -> Telerik Fiddler Options 
原文:Fiddler - 超好用的http抓包工具使用介绍(附:拦截请求并修改返回数据)
(2)在弹出窗口中,勾选 HTTPS 标签页下的 Decrypt HTTPS Traffic。这是会弹出个对话框询问是否安装证书,选择 Yes 安装便可。
原文:Fiddler - 超好用的http抓包工具使用介绍(附:拦截请求并修改返回数据)
(3)再次访问 HTTPS 页面,能够发现数据已经够被成功解析了。
原文:Fiddler - 超好用的http抓包工具使用介绍(附:拦截请求并修改返回数据)

5、自定义请求发送到服务器

在 Composer 面板中,咱们能够向服务器发送自定义请求,能够手动建立一个新的请求,也能够从会话表中,拖拽一个现有的请求。
使用时咱们只须要提供简单的 URLS 地址便可。固然还能够在 RequestBody 定制一些属性,如模拟浏览器 User-Agent 等等。
原文:Fiddler - 超好用的http抓包工具使用介绍(附:拦截请求并修改返回数据)

6、抓取 iPhone / Android 设备的数据包

想要 Fiddler 抓取移动端设备的数据包,其实很简单。只要设置代理,让这些数据经过 Fiddler 便可。
 
(1)首先确保 PC 和手机是在同一个局域网下。打开 Fidder,点击菜单栏中 Tools –> Telerik Fiddler Options 
原文:Fiddler - 超好用的http抓包工具使用介绍(附:拦截请求并修改返回数据)
(2)勾选 Connections 选项卡中的“Allow remote computers to connect”容许远程链接。
  • 勾选后可能会要求重启 Fiddler,那就重启一下。
  • 默认代理端口是 8888,能够不须要修改。
原文:Fiddler - 超好用的http抓包工具使用介绍(附:拦截请求并修改返回数据)
(3)将手机端的代理设置为 PC 的 IP 和端口(这里假设咱们 PC 地址为 192.168.1.101)
原文:Fiddler - 超好用的http抓包工具使用介绍(附:拦截请求并修改返回数据)
(4)接着打开手机浏览器,访问 PC 的地址+端口
原文:Fiddler - 超好用的http抓包工具使用介绍(附:拦截请求并修改返回数据)
(5)在打开的页面中点击“FiddlerRoot certificate”,下载并安装证书。
原文:Fiddler - 超好用的http抓包工具使用介绍(附:拦截请求并修改返回数据)
(6)安装完了证书,使用用手机访问应用,就能够看到截取到的数据包了。(这里我使用百度外卖 App 随便测试了下)
原文:Fiddler - 超好用的http抓包工具使用介绍(附:拦截请求并修改返回数据)


原文出自:www.hangge.com  转载请保留原文连接:http://www.hangge.com/blog/cache/detail_1697.htmlhtml

相关文章
相关标签/搜索