Expires
Expires是http1.0提出的一个表示资源过期时间的essay-header,它描述的是一个绝对时间,由服务器返回,用GMT格式的字符串表示,如:Expires:Thu, 31 Dec 2037 23:55:55 GMT,它的缓存原理是:
- 浏览器第一次跟服务器请求一个资源,服务器在返回这个资源的同时,在respone header加上Expires属性,如:
- 浏览器在接收到这个资源后,会把这个资源连同所有response header一起缓存下来;
- 浏览器再请求这个资源时,先从缓存中寻找,找到这个资源后,拿出它的Expires跟当前的请求时间比较,如果请求时间在Expires指定的时间之前,就能命中缓存,否则就不行。
- 如果缓存没有命中,浏览器直接从服务器加载资源时,Expires Header在重新加载的时候会被更新。
``` 缺点: 由于它是服务器返回的一个绝对时间,在服务器时间与客户端时间相差较大时,缓存管理容易出现问题。 比如随意修改下客户端时间,就能影响缓存命中的结果。