【接口工具】接口抓包工具之Fiddler
一、Fiddler的基本功能介绍
Fiddler的官方网站: https://www.telerik.com/purchase/fiddler
Fiddler是最强大最好用的Web调试工具之一,它能记录所有客户端和服务器的http和https请求,允许你监视,设置断点,甚至修改输入输出数据,Fiddler包含了一个强大的基于时间脚本的子系统,并且能使用.NET语言进行扩展。对HTTP协议越了解,就能越掌握Fiddler的使用方法。越使用Fiddler,就越能帮助了解HTTP协议。Fiddler无论对开发人员或者测试人员来说,都是非常有用的工具。
Fiddler的工作原理:Fiddler是以代理web服务器的形式工作的,它使用代理本地地址:127.0.0.1,端口xxxx,如下图所示。
能支持HTTP代理的任意程序的数据包都能被Fiddler嗅探到,Fiddler的运行机制就是本机上监听Fiddler中设置的端口的HTTP代理。
二、Fiddler基本界面及设置
1、Fiddler基本界面

2、Fiddler基本设置
设置Fiddler捕获HTTPS会话
选择Tool->Options->勾选图中所选->OK

再点击Connections->勾选图中所选->OK,端口号可以自行更改,填写没有占用的端口号,Fiddler默认端口为8888。

注意:如要非本地通过Fiddler进行代理捕获接口数据,在Connections中勾选上Allow remote computers to connect。

三、客户端设置代理方法
1、本机浏览器设置代理方法
Chrome中设置代理:
以67.0.3396.99(正式版本) (64 位)为例,设置->高级->系统->打开代理->设置局域网设置(L)->代理服务器->勾选为LAN使用代理服务器高级,输入ip及端口,见下图。

Firefox中设置代理:
以61.0.1 (64 位) 版本为例,打开菜单->选项->网络代理->设置,输入ip及端口,见下图。

Firefox中安装Fiddler插件:
修改Firefox中的代理比较麻烦,不用fiddler的时候还要去掉代理。推荐在firefox中使用fiddler hook 插件,这样你非常方便的使用Fiddler获取firefox中的requesxiant 和response。
当你安装fiddler后,就可以安装好Fiddler hook插件,你需要到firefox中区启动这个插件:
打开菜单->附加组件->插件 ->搜索Fiddlerfox->添加到Firefox

安好后,在浏览器顶部右侧会出现Fiddlerfox图标,点击后即使用了Fiddler代理。

为能捕获HTTPS会话,如未安装证书,访问网站会提示”您的连接不是私密链接“,可点击高级选择继续访问,访问时会提示访问的网站是不安全的,提示证书无效,Fiddler也抓捕不到https请求。


需要安装证书,在浏览器中输入本地ip:Fiddler中设置的端口号(127.0.0.1:8080),点击图中框图部分下载证书点击安装。

安装时会出现以下界面。

2、手机端设置代理方法
电脑(本地)开热点让手机端连接。
查看本地的ip
命令提示符->ipconfig->选择热点IPV4 ip

Android设置代理方法:
连上热点无线后,点击网络后面的”>“,找到代理栏,选择手动,主机名输入热点ip及Fiddler中设置的端口号。


现在就可以捕获http数据了。
如要捕获https,还是按照浏览器方法下载证书,手机先连热点wifi,找个浏览器输入热点ip:端口号,如下所示,点击FiddlerRoot certificate下载证书。
如果手机连了热点,且输入热点ip:端口号正确,但无法访问页面,可能当前端口号被占用,建议换个端口号再进行操作。

下载完成后,进入设置,在设置搜索框中输入”证书“,点击安装证书,找到下载的证书文件路径,选择文件后点击确定即可安装证书。


Ios设置代理方法:
连上热点无线后,点击配置代理,选择手动,服务器输入热点ip及Fiddler中设置的端口号。


现在就可以捕获http数据了。
如要捕获https,按照Android下载证书方式进行下载。然后按照手机提示一步步操作安装即可。Ios的证书是放在设置->通用->描述文件里的。




再进入设置->通用->关于本机->证书信任设置,开启信任证书按钮。此步很重要,没开启手机设备连不上网络。

好了,现在就可以捕获HTTPS会话了。
注意TIPS:
1、Fiddler不能在Mac系统中运行,如要使用Fiddler捕获Mac浏览器包,需在Mac上装Windows虚拟机。
2、每次关闭Fiddler,一定要记得把本地电脑上的代理禁止掉,否则容易造成无法上网。下图为chrome去勾选代理设置中的样式。

------------------------------------------------------Tanwheey-------------------------------------------------------------------------
爱生活,爱工作。


【接口工具】接口抓包工具之Fiddler的更多相关文章
- MAC下调试JSON接口的工具(HTTP抓包工具)
MAC下的HTTP接口抓包工具,专业级: 专门做JSON接口测试的工具,简单好用!
- CentOS 安装抓包工具wireshark-tshark抓包工具
原文出处:razeen -> https://razeen.me/post/how-to-install-tshark-on-centos.html 准备在服务器上用tshark抓包,分析一下数 ...
- 抓包工具 fiddler
1. 抓包软件 TCP 外挂: 1. 解包工具 2.抓包工具 HTTP 1.前后端交互过程 2.学习的作用 3.模拟网络情况 2 http client server 没有加密 https 证书 非 ...
- linux下的抓包工具tcpdump
1.由netstat查看网络情况,引出的TCP建立连接.终止连接过程,以及TCP状态分析: 2.Soap=XML+HTTP引出的HTTP协议分析: 3.Soap(Simple Object Acces ...
- 为什么用抓包工具看HTTPS包是明文的
测试或者开发调试的过程中,经常会进行抓包分析,并且装上抓包工具的证书就能抓取 HTTPS 的数据包并显示.由此就产生了一个疑问,为什么抓包工具装上证书后就能抓到 HTTPS 的包并显示呢?不是说 HT ...
- 移动端测试接口--Fiddler抓包工具
Fiddler抓包工具是一款免费且功能强大的数据包抓取软件.它通过代理的方式获取程序http通讯的数据,可以用其检测网页和服务器的交互情况,能够记录所有客户端和服务器间的http请求,支持监视.设置断 ...
- 【Python+postman接口自动化测试】(5)抓包工具Fiddler简介
Fiddler简介 Fiddler 4.6 下载 http://www.downza.cn/soft/234727.html 为什么使用Fiddler? 可以抓到请求数据,查看Raw格式/表单格式/J ...
- 【接口工具】接口抓包工具之Charles
上篇我们讲了Fiddler,Fiddler是用C#开发的,所以Fiddler不能在Mac系统中运行,没办法直接用Fiddler来截获MAC系统中的HTTP/HTTPS, Mac 用户怎么办呢? 1.F ...
- 使用抓包工具将抓到的接口存放Jmeter中
1. jmeter工作台新增 HTTP代理服务器.端口设置为:8888 2. 抓包工具上面设置代理服务器地址 3.代理服务器未启动时,抓包工具界面显示无法联网. 4.在Jmeter中点击[启动]HTT ...
- Python+Requests接口测试教程(1):Fiddler抓包工具
本书涵盖内容:fiddler.http协议.json.requests+unittest+报告.bs4.数据相关(mysql/oracle/logging)等内容.刚买须知:本书是针对零基础入门接口测 ...
随机推荐
- localeCompare按首字母排序汉字
sort() 方法用于对数组的元素进行排序. 如果想按照其他标准进行排序,就需要提供比较函数,该函数要比较两个值,然后返回一个用于说明这两个值的相对顺序的数字.比较函数应该具有两个参数 a 和 b,其 ...
- java中的Excel导出功能
public void exportExcel(Long activityId, HttpServletResponse response) throws IOException { // 获取统计报 ...
- 浅谈ContextLoaderListener及其上下文与DispatcherServlet的区别
一般在使用SpingMVC开发的项目中,一般都会在web.xml文件中配置ContextLoaderListener监听器,如下: <listener> <listener-clas ...
- AIX下绑定双网卡
摘要 AIX下绑定双网卡,实现IP地址的高可用.为后续按照oracle11gRAC环境做准备. 收 藏 生产环境中是将不同网卡的不同网口进行绑定.比如A网卡有A1,A2网口:B网卡有B1,B2网口 ...
- Python操作cx_Oracle笔记
参考文章: http://cx-oracle.readthedocs.io/en/latest/cursor.html # 创建数据库连接 ordb = Oracle.connect("{0 ...
- SpringBoot 参数校验
一.添加依赖 <dependency> <groupId>org.springframework.boot</groupId> <artifactId> ...
- Task3.特征选择
参考:https://www.jianshu.com/p/f3b92124cd2b 互信息 衡量两个随机变量之间的相关性,两个随机变量相关信息的多少. 随机变量就是随机试验结果的量的表示,可以理解为按 ...
- 10:基于Tomcat部署Web工程
1创建目录, 2.标识目录java文件,资源文件
- Linux内核设计与实现 总结笔记(第五章)系统调用
系统调用 内核提供了用户进程和内核交互的接口,使得应用程序可以受限制的访问硬件设备. 提供这些接口主要是为了保证系统稳定可靠,避免应用程序恣意妄行. 一.内核通信 系统调用在用户空间进程和硬件设备之间 ...
- Centos7卸载FastDFS6.1卸载(六)
今天由于安装了高版本的fastdfs,与nginx不兼容,因此要卸载掉,重新安装. 转载:http://www.leftso.com/blog/244.html ) 停止服务 [root@bogon ...