码迷,mamicode.com
首页 > 其他好文 > 详细

浏览器缓存

时间:2017-06-06 23:29:34      阅读:233      评论:0      收藏:0      [点我收藏+]

标签:响应   获取   header   服务端   前端   设置   public   cdn   产生   

定义缓存是由header头决定:一共4种、Cache-Control 、Expires 、Last-modified 、ETag

一、Cache-Control的可能取值:

1、max-age(单位s):指定设置缓存的最大的有效时间,定义的是时间长短。当浏览器向服务器发送请求后,在max-age这段时间里浏览器就不会再向服务器发送请求了。

2、s-maxage(单位s):只用于共享缓存,(如CDN缓冲),用法和max-age。

3、publice:指定响应会被缓存,并且存在多用户共享。

4、private:响应只作为私有的缓存,不能在用户间共享。

5、no-cache:指定不缓存响应,表明资源不进行缓存。no-cache 和private可以不能保证不缓存,还要加上过期时间。

6、no-store:绝对禁止缓存。

7、must-revalidate:指定如果页面是过期的,则去服务器进行获取。

 

二、Expires:

缓存过期时间,用来指定资源到期的时间,是服务器端的具体的时间点。Expires = max-age + 请求时间

 

三、Last-modified:

服务器文件的最后修改时间,需要和cache-control共同使用,是检查服务器端资源是否更新的一种方式。

 

四、ETag:

根据试题内容生成一段hash字符串,标识资源的状态,由服务端产生。

 

在前端只要使用Cache-Control 和 Last-modified。

 

浏览器缓存

标签:响应   获取   header   服务端   前端   设置   public   cdn   产生   

原文地址:http://www.cnblogs.com/lantuoxie/p/6953944.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!