这是我参与「第五届青训营 」伴学笔记创作活动的第 13 天,以下是我根据课程内容整理的笔记。
课程介绍
在正式讲解 Http 协议的技术细节前,本节课前置介绍 Http 协议的基本定义和特点,在此基础上,对于 Http 协议的发展历程及报文结构展开进一步分析。
课程重点
- HTTP 协议的基本定义
- HTTP 协议发展历程
- HTTP 协议的报文结构
笔记内容
HTTP 协议的基本定义
1. 什么是HTTP
- Hyper Text Transfer Protocol
- 超文本传输协议
- 应用层协议,基于TCP协议
- 请求响应
- 简单可扩展
- 无状态
HTTP 协议发展历程
-
HTTP/0.9 单行协议
- 请求GET/mypage.html
- 响应只有HTML文档
-
HTTP/1.0 构建可扩展性
- 增加了Header
- 有了状态码
- 支持多种文档类型
-
HTTP/11标准化协议
- 链接复用
- 缓存
- 内容协商
-
HTTP/2更优异的表现
- 二进制协议
- 压缩header
- 服务器推送
-
HTTP/3草案
HTTP 协议的报文结构
1. Method
| GET | 请求一个指定资源的表示形式,使用GET的请求应该只被用于获取数据 |
|---|---|
| POST | 用于将实体提交到指定的资源,通常导致在服务器上的状态变化或副作用 |
| PUT | 用请求有效载荷替换目标资源的所有当前表示 |
| DELETE | 删除指定的资源 |
| HEAD | 请求一个与GT请求的响应相同的响应,但没有响应体 |
| CONNECT | 建立一个到由目标资源标识的服务器的隧道 |
| OPTIONS | 用于描述目标资源的通信选项 |
| TRACE | 沿着到目标资源的路径执行一个消息环回测试 |
| PATCH | 用于对资源应用部分修改 |
Safe(安全的):不会修改服务器的数据的方法(GET HEAD OPTIONS)
ldempotent(幂等):同样的请求被执行一次与连续执行多次的效果是一样的,服务器的状态也是一样的,所有safe的方法都是Idempotent的(GET HEAD OPTIONS PUT DELETE)
结语
通过本次课程的学习,真的收获到了许多,初步了解了HTTP的基本情况。