浏览器缓存详解
2019-08-29 本文已影响0人
梦舟缘钓
来源于《前端分享》
一、浏览器缓存策略:
1、强缓存
2、协商缓存
强缓存:当浏览器去请求某个文件的时候,服务端就在respone header里面对文件做了缓存配置。缓存的时间、缓存类型都由服务端控制,具体表现为:respone header 的cache-control,常见的设置是max-age public private no-cache no-store等。
协商缓存:强缓存给资源设置了过期时间,客户端每次请求资源时都会看是否过期;只有在过期才会去询问服务器。所以当某天,客户端请求该资源时发现其过期了,这是就会去请求服务器了,而这时候去请求服务器的这过程就可以设置协商缓存。
Cache-Control: no-cache 不做强缓存,但是不妨碍设置协商缓存;一般如果你做了强缓存,只有在强缓存失效了才走协商缓存的,设置了no-cache就不会走强缓存了,每次请求都回询问服务端。
cache-control: no-store 不缓存,这个会让客户端、服务器都不缓存,也就没有所谓的强缓存、协商缓存了。
浏览器缓存检查流程: (1)、检验强缓存是否命中。(2)、强缓存未命中则检查协商缓存