一、本堂课重点内容:
这是我参与「第五届青训营 」笔记创作活动的第4天
- HTTP 协议的基本定义
- HTTP 协议主要特征
- HTTP 协议发展历程
- HTTP 协议的报文结构
- 场景分析 - 静态资源
- 场景分析 - 登录
二、详细知识点介绍:
HTTP是超文本传输协议,属于应用层协议,基于TCP协议。HTTP有请求响应、简单可扩展和无状态特点。无状态是没有记忆能力,每一个请求都是独立存在的。
HTTP发展历程从HTTO0.9-HTTP1.0-HTTP1.1-HTTP2。http1是标准协议,用于链接复用,缓存和内容协商。HTTP2拥有更优异的表现,二进制协议、压缩header和服务器推送等等。当然http3也会在不久的日子里到来。
HTTP协议报文有method和状态码。Method中get、post、put和delete用的比较多。get是请求资源,post是提交资源,put是替换资源,delete是删除资源。状态码中最多的就是200,这是客户端请求成功,当然生活中也有404资源不存在,或504暂无响应。报文中还有常用请求头例如accept、content-type和cookie。也有对应的响应头有content-type,也有一个access-control-allow-origin很重要,他是服务器端允许的请求origin头部,一般都是*。报文中还有缓存分为强缓存和协商缓存。
三、实践练习例子:
静态分析-场景资源。
该例子的缓存策略是强缓存,时间有一年。同时它可以允许所有域名访问,资源类型是CSS。静态资源方案也可以缓存+CDN(内容分发)+文件名hash。案例中也提到如果要求程序员更改最新的方案同步到用户时,可以更改文件名hash来进行数据同步。
静态分析-登录
跨域解决方法有CORS和代理服务器。
四、课后个人总结:
HTTP知识点还是很多,但也非常的贴合生活中的入门知识点,学到了很多。但是在静态分析跨域那边一块疑点还是很多,学起来比较吃力,希望课后再接再厉。