介绍使用:javascript
expires,这是http1.0时的规范;它的值为一个绝对时间的GMT格式的时间字符串,如Mon, 10 Jun 2015 21:31:12 GMT,若是发送请求的时间在expires以前,那么本地缓存始终有效,不然就会发送请求到服务器来获取资源html
上面说到,使用强缓存时,浏览器不会发送请求到服务端,根据设置的缓存时间浏览器一直从缓存中获取资源,在这期间若资源产生了变化,浏览器就在缓存期内就一直得不到最新的资源,那么如何防止这种事情发生呢?前端
经过更新页面中引用的资源路径,让浏览器主动放弃缓存,加载新资源。java
前端经常后面加上版本号和一些hash值从新的读取api
4,代码案例浏览器
3、强缓存与协商缓存的区别,能够用下表来进行描述:缓存
获取资源形式 | 状态码 | 发送请求到服务器 | |
强缓存 | 从缓存取 | 200(from cache) | 否,直接从缓存取 |
协商缓存 | 从缓存取 | 304(not modified) | 是,正如其名,经过服务器来告知缓存是否可用 |