这是我参与「第五届青训营 」伴学笔记创作活动的第 5 天
本堂课重点内容
-
- HTTP 协议的基本定义
- HTTP 协议主要特征
- HTTP 协议发展历程
- HTTP 协议的报文结构
-
- 场景分析 - 静态资源
- 场景分析 - 登录
-
- HTTP 协议实战 - 浏览器
- HTTP 协议实战 - Node篇
- 网络优化手段
- HTTP 协议拓展 - 通信方式
详细知识点
简单流程
什么是HTTP
HTTP 协议是 Hyper Text Transfer Protocol(超文本传输协议)的缩写,是用于从万维网( WWW:World Wide Web )服务器传输超文本到本地浏览器的传送协议。
应用层协议,基于TCP协议。
HTTP请求分为请求和响应两个部分。
简单可扩展:语义直白,设计上提供扩展能力
无状态:每个请求之间是孤立的
发展历程
HTTP 请求方法
| 序号 | 方法 | 描述 |
|---|---|---|
| 1 | GET | 请求一个指定资源的表示形式,使用GET的请求应该只被用于获取数据. |
| 2 | POST | 用于将实体提交到指定的资源,通常导致在服务器上的状态变化或副作用 |
| 3 | PUT | 用请求有效载荷替换目标资源的所有当前表示 |
| 4 | DELETE | 删除指定的资源 |
| 5 | HEAD | 请求一个与GET请求的响应相同的响应,但没有响应体 |
| 6 | CONNECT | 建立一个到由目标资源标识的服务器的隧道 |
| 7 | OPTIONS | 用于描述目标资源的通信选项 |
| 8 | TRACE | 沿着到目标资源的路径执行一个消息环回测试 |
| 9 | PATCH | 用于对资源应用部分修改 |
safe(安全的):不会修改服务器数据的方法,GET HEAD OPTIONS
ldempotent (幂等) :同样的请求被执行一次与连续执行多次的效果是一样的, 服务器的状态也是一样的,所有safe的方法都是ldempotent的,GET HEAD OPTIONS PUT DELETE
状态码
1xx:指定信息,表示请求已接收,继续处理
2xx:成功,表示请求已被成功接收、理解、接受
3xx:重定向,要完成请求必须进行更进一步的操作
4xx:客户端错误,请求有语法错误或请求无法实现
5xx:服务器端错误,服务器未能实现合法的请求
RESTful API
RESTfulAPI : 一种API设计风格;REST - Representational State Transfer (1) 每一个URI代表一 种资源; (2)客户端和服务器之间,传递这种资源的某种表现层; (3)客户端通过HTTP method,对服务器端资源进行操作,实现"表现层状态转化"。
请求头与响应头
缓存
- 强缓存
- 协商缓存
。。。
课后个人总结
HTTP是web开发必须要了解、要学习的,学完了这个HTTP系列课程之后,我不再只是对HTTP一知半解,而是建立起了一个比较完整的HTTP知识体系。以前只是了解到200、404等个别状态码是什么意思,现在所有状态码都了解到了。不仅仅是状态码,现在什么请求头、响应头、缓存等都有一个比较深入的了解。总的来说,掘金课程的质量还是可以的,点赞o( ̄▽ ̄)d