Fiddler实现 HTTP 网络抓包


文章目录

  • 前言
  • Fiddler 是什么
  • 下载 Fiddler
    • 1. 官网下载 Fiddler Classic
    • 2. 安装 Fiddler Classic
    • 3. 打开 Fiddler Classic

前言

前面我们简单地学习了关于应用层——自定义协议的知识,但是这都只是自定义协议,在实际生活中自定义协议用的还是占少数的,在应用层中比较常用的协议是 HTTP 协议,在学习这两个协议之前,我们需要使用到一个工具——Fiddler来实现 HTTP 的抓包来查看它们的请求和响应报文。

Fiddler 是什么

Fiddler是一个HTTP协议调试代理工具,它能够记录并检查所有电脑和互联网之间的HTTP通讯,设置断点,查看所有的“进出”Fiddler的数据(指cookie、html、js、css等文件)。

如果只是客户端和服务器端之间的通信,我们其实很难查看到客户端的请求数据包和服务端的响应数据包,我们客户端得到的只是请求数据包和响应数据包经过处理之后得到的,既然要学习 HTTP 协议,我们首先要学习它的报文格式,学习他的报文格式就需要得到它的报文格式,要想获取到 HTTP 的请求和响应报文,就需要借助到抓包工具来抓取到 HTTP 数据包。

Fiddler 是专门来负责抓取 HTTP 数据包的,其他工具虽然也可以抓取 HTTP 数据包,但是因为 Fiddler 是专门抓取 HTTP 数据包的,所以相较于其他软件,抓取 HTTP 数据包我们还是使用 Fiddler。

Fiddler实现 HTTP 网络抓包_第1张图片

下载 Fiddler

1. 官网下载 Fiddler Classic

进入 Fiddler 官网https://www.telerik.com/fiddler

Fiddler实现 HTTP 网络抓包_第2张图片

Fillder Everywhere 虽然功能更多,但是需要支付一定的费用,所以我们选择 Fiddler Classic免费版。找到下面的 Fiddler Classic 点击 Try For Free

Fiddler实现 HTTP 网络抓包_第3张图片

简单填写信息后便可下载

Fiddler实现 HTTP 网络抓包_第4张图片

2. 安装 Fiddler Classic

下载完成 Fiddler Classic 的安装包之后就是安装了,安装过程很简单。

Fiddler实现 HTTP 网络抓包_第5张图片
Fiddler实现 HTTP 网络抓包_第6张图片

3. 打开 Fiddler Classic

打开 Fiddler 之后可能会出现这样的提示,我们点 NO 就可以了。

Fiddler实现 HTTP 网络抓包_第7张图片
打开之后出现的是这样的界面

Fiddler实现 HTTP 网络抓包_第8张图片
但是你们出现的抓包数据可能没有那么多并且抓取到的都是 HTTP 数据包,而没有 HTTPS 数据包,要想抓取到 HTTPS 数据包,还需要做出相关的配置。点击 Tools 、Options

Fiddler实现 HTTP 网络抓包_第9张图片
选择 HTTPS ,然后将出现的所有选项都勾选上。

Fiddler实现 HTTP 网络抓包_第10张图片
在勾选过程中可能会弹出提示,这里弹出来的是安全证书,我们选择YES,记住了,这里一定要选择 YES ,否者就需要卸载重装了。

Fiddler实现 HTTP 网络抓包_第11张图片

左边显示的就是我们 Fiddler 抓取到的 HTTP 数据包和 HTTPS 数据包

Fiddler实现 HTTP 网络抓包_第12张图片
当我们访问 www.baidu.com 的时候左边会抓取到很多的数据包,我们不用管那么多,只需要看这个蓝色的就可以了。

Fiddler实现 HTTP 网络抓包_第13张图片

双击抓取到的 HTTP 数据包之后,右边就会显示出 HTTP 数据包的请求数据包和响应数据包。

通过点击请求数据包的 Row 和 View In Notepad 可以记事本打开。

Fiddler实现 HTTP 网络抓包_第14张图片

Fiddler实现 HTTP 网络抓包_第15张图片

查看下面的响应部分我们可以发现,响应数据包出现的是乱码,那么为什么这里会出现乱码呢?因为当服务器在返回响应的时候会对这个数据吧进行压缩来节省网络带宽,如果每个响应数据包都不压缩的话,那么就会造化网络带宽的浪费,所以我们需要对这个压缩的数据包进行解压缩。Fiddler实现 HTTP 网络抓包_第16张图片

Fiddler实现 HTTP 网络抓包_第17张图片
解压缩之后,同样是点击 Row,查看详细的数据格式。

Fiddler实现 HTTP 网络抓包_第18张图片

点击左边部分,然后使用 CTRL + a 、delete 可以删除抓取到的数据包。

Fiddler实现 HTTP 网络抓包_第19张图片

你可能感兴趣的:(JavaEE,网络,fiddler,http)