目录
HTTP 协议基本概念
Fiddle 下载
HTTP 请求格式
HTTP 响应格式
HTTP 协议基本概念
- 应用层使用最广泛的协议
- 浏览器 基于 HTTP协议 获取网站
- 是 浏览器 和 服务器 之间的交互桥梁
- HTTP协议 基于传输层的 TCP协议 实现
- HTTP 全称为 HyperText Transfer Protocol,中文翻译为 超文本传输,意思是不仅能传输文本,还可传输图片、视频、音频等二进制数据
Fiddle 下载
- Fiddle 是一种抓包工具来捕获到请求交互的详细情况
- 抓包工具相当于一个 代理程序 ,浏览器给服务器发的请求会经过这个代理程序,因此可以分析出 请求 和 响应 的结果
安装步骤:
1.在浏览器中输入 Fiddle,找到官网并点击
2.进入 Fiddle 官网
3.进入 Fiddle 下载页面
4.一路点击 next 即可完成安装~~
注意:
- Fiddle 属于代理软件,使用时应该关闭其他代理软件才能正常使用(如一些浏览器插件、梯子等)
- HTTPS 是基于 HTTP 的安全传输协议,当下互联网绝大部分服务器均为 HTTPS,但是 Fiddle 默认不能抓 HTTPS 的包,所以需要我们自己手动启用 HTTPS 并安装证书
简单操作示例:
- 打开运行 Fiddle,并进行 浏览器打开百度首页 的操作
1.打开百度首页后,查看 Fiddle
2.查看 浏览器请求百度首页 的原始状态
HTTP 请求格式
1.首行
- 红框代表 HTTP 的方法
- 篮框代表 URL,唯一资源定位符,标识互联网上唯一的资源的位置(资源在服务器的哪个目录下的哪个文件)
- 绿框代表 HTTP 的版本号
2.请求头 header
- 按行组织的键值对,每一行均为一个键值对,键和值之间使用 :和 空格 来分割
- 键和值均有固定含义
3.空白行
- 首图红框部分即为空白行
- 一个 HTTP 请求的 header 可以有多个,而空白行即为 header 的结束标记
4.正文 body
- 不是每个请求均有正文部分
HTTP 响应格式
1.首行
- 红框代表 HTTP 的版本号
- 绿框为状态码
2.响应报头 header
- 键值对结构
3.空白行
- 首图红框部分即为空白行
- 一个 HTTP 请求的 header 可以有多个,而空白行即为 header 的结束标记
4.正文
- 正文可为 json 数据、HTML、CSS、JavaScript、图片 等等
- 此处正文为 json 数据