写这篇文章的原因
记录前端性能优化用到的关键概念
简化大家对HTTP的学习
大家或许面试的时候可以用得到哦
HTTP是什么
Web的应用层协议(超文本传输协议HyperText Transfer Protocol)。它由两个程序实现:客户端程序和服务器端程序。这两个程序运行在两个不同端系统,通过交换HTTP报文来实现通信。对于web前端工程师常见的场景中Web浏览器(即客户端)而Web server(nginx、apache等)就是服务器端。你的机器只要有了这两端,就可以在本地实现HTTP通信传输。
传说中的三次握手是什么
客户端---->发送TCP报文段---->服务器端 (第一次)
服务器端---->用TCP报文段确认和响应---->客户端 (第二次)
客户端向服务器端返回确认、发送HTTP请求报文 (第三次)
报文的组成
起始行(start line)
首部块(header)
主体(body)
起始行关键点
状态码(status code)
200 请求没有问题,实体的主题部分包含了所请求的资源
304 最近资源没有被修改
404 无法找到所请求的URL
500 服务器遇到一个妨碍它为请求提供服务的错误
首部块(header)
通用首部 (chrome中Headers下面的General)
请求首部 (chrome中Headers下面的Request Headers)
响应首部 (chrome中Headers下面的Response Headers)扫描二维码关注公众号,回复: 8756031 查看本文章
跟缓存有关的头信息
请求首部
Cache-Control:no-cache
Pragma:no-cache
用户在本地浏览器设置disable-cache时
响应首部
Etag 与此资源相关的资源标记
Expires 资源不再有效,要从源端再次获取实体日期和时间
Last-Modified 资源最后被修改的时间