当前位置: 首页 > Web前端 > HTML5

浏览器缓存_0

时间:2023-04-05 17:26:03 HTML5

今天将不再喋喋不休;直奔主题;前言浏览器缓存可以说是浏览器提升性能的一种简单高效的方式;既提高了网页加载速度,又提升了用户体验;由于缓存文件可以重复使用,这样也可以减少带宽,减轻网络和服务器的压力;对于一个数据请求,可以简单分为三个阶段:浏览器发起请求,服务器处理并返回,浏览器接受并响应;缓存主要在前面两个阶段来处理!对应Ni:是强缓存和协商缓存;什么是强缓存,什么是协商缓存?强缓存:主要由cache-control和expires决定。告诉浏览器遇到这种请求直接去缓存。协商缓存:表示为:last-modified,etag。当向服务器请求数据时,服务会将时间与etag进行比较。如果发现文件没有变化,返回304告诉浏览器去本地缓存。否则,通常返回缓存控制字段。如果请求是cache-control,可选字段为:expires字段;设置过期时间:如:3dlast-modified字段当服务器返回资源时,会通过last-modified返回给客户端。客户端下次请求资源时会带上这个时间。这个时候服务器会检查这个时间和服务器修改的时间是否一致。一致则返回304,不一致则返回200。etag字段只是根据last-modified判断的。还有瑕疵,比如最后一次,但是内容没有改变。这时候我们可以使用etag判断服务端通过算法计算出内容,得到一串值,然后通过etag返回给客户端。下一次客户端请求也会携带etag值进行服务验证。如果相同则返回304,否则返回200。