这是我参与「第五届青训营 」笔记创作活动的第2天,关于HTTP使用协议的知识点总结。
———Zy_Thomas
初识HTTP
什么是HTTP
HTTP:
- Hyper Text Transfer Protocol 超文本传输协议
- 应用层协议,基于TCP协议
- 请求响应
- 简单可扩展
- 无状态
协议分析
HTTP发展
报文
Method:
| Method | |
|---|---|
| GET | 请求一个指定资源的表示形式。使用GET的请求应该只被用于获取数据。 |
| POST | 用于将实体提交到指定的资源,通常导致在服务器上的状态变化或副作用。 |
| PUT | 用请求有效载荷替换目标资源的所有当前表示。 |
| DELETE | 删除指定的资源。 |
| HEAD | 请求一个与GET请求的响应相同的响应,但没有响应体。 |
| CONNECT | 建立一个到由目标资源表示的服务器的隧道。 |
| OPTIONS | 用于描述目标资源的通信选项。 |
| TRACE | 沿着到目标资源的路径执行一个消息环回测试。 |
| PATCH | 用于对资源应用部分修改。 |
常见状态码
- 200:OK-客户端请求成功
- 301:资源(网页等)被永久转移到其他URL
- 302:临时跳转
- 401:Unauthorized-请求未经授权
- 404:请求资源不存在,可能是输入了错误的URL
- 500:服务器内部发生了不可预期的错误
- 504:Gateway Timeout 网关或者代理的服务器无法在规定的时间内获得想要的响应。
**RESTful API **:一种 API 设计风格;REST - Representational State Transfer
- 每一个URI代表一种资源;
- 客户端和服务端之间,传递这种资源的某种表现层;
- 客户端通过HTTP method,对服务器端资源进行操作,实现"表现层状态转化"。
HTTP/2概述:更快、更稳定、更简单
-
帧(frame):HTTP/2 通信的最小单位,每个帧都包含帧头,至少也会标识出当前帧所属的数据流。
-
二进制
-
消息:与逻辑请求或响应消息对应的完整的一系列帧。
-
数据流:已建立的链接内的双向字节流,可以承载一条或多条消息。
-
交错发送,接收方重组织