一、HTTP协议的基本格式
HTTP 是一个文本格式的协议. 可以通过 Chrome 开发者工具或者 Fiddler 抓包, 分析 HTTP 请求/响应的细节.
1、客户端:主动发起网络请求的一端;
2、服务器:被动接受网络请求的一端;
3、请求:客户端给服务器发的数据;
4、响应:服务器给客户端返回的数据;
他的具体格式:(请求和相应的格式,除第一行不一样,其他三行都一样)
四个部分:
- 行信息:(请求=>请求行;响应=>响应行)
- 头信息:(请求=>请求头;响应=>响应头)
- 空行:为什么要有空行?因为http协议是基于传输层tcp实现的(字节流),头信息是可变长度,读到空行,就知道要结束了。
- body:(请求=>请求头正文;响应=>响应正文)
fiddler 的用法
HTTP 是一个文本格式的协议. 可以通过 Chrome 开发者工具或者 Fiddler 抓包, 分析 HTTP 请求/响应的细节.
1. 使用Chrome开发者工具来进行抓包,观察我们的HTTP协议。
2. 使用Fiddler进行抓包。
(1)下载安装Fillder工具。
直接下载:Fiddler | Web Debugging Proxy and Troubleshooting Solutions
(2)打开Fillder
- 左侧窗口显示了所有的 HTTP请求/响应, 可以选中某个请求查看详情.
- 右侧上方显示了 HTTP 请求的报文内容. (切换到 Raw 标签页可以看到详细的数据格式)
- 右侧下方显示了 HTTP 响应的报文内容. (切换到 Raw 标签页可以看到详细的数据格式)
- 请求和响应的详细数据, 可以通过右下角的 View in Notepad 通过记事本打开
2.2 抓百度的包
3 抓包的原理
Fiddler 相当于一个 "代理".
浏览器访问 sogou.com 时, 就会把 HTTP 请求先发给 Fiddler, Fiddler 再把请求转发给 sogou 的服务器.
当 sogou 服务器返回数据时, Fiddler 拿到返回数据, 再把数据交给浏览器.
因此 Fiddler 对于浏览器和 sogou 服务器之间交互的数据细节, 都是非常清楚的