这应该是页面性能优化最有效的方法了,如果你没有给页面设置http缓存,那么其他的方法可能起到的方法微乎其微。
他的主要原理就是当你访问一个网页,
浏览器会将资源缓存在本地,下次访问时不会再去访问服务器,这样就会大大加快页面响应
注意http缓存不是cookie,localstorage,这两个是存储方式http缓存分为强缓存和协商缓存,强缓存就是在过期时间内不会再去访问服务器请求这些资源,协商缓存是在过期以后不知道服务器内容有没有发生改变,访问服务器,如果无改变就会执行本地资源
http缓存的关键字key都会在响应头中,我们打开一个网页看一下控制台
画红线的就是http缓存了,我们一个一个说,
Cache-Control强缓存,max-age就是它的最大过期时间单位是s
Etag协商缓存,他就如同一个hash值,如果请求服务器的hash值改变,那么浏览器就会重新向服务器请求这些资源,如果未发生改变,则会执行本地资源。
Expires强缓存,它的value值就是过期时间,这个时间是客户端本地时间,那么如果客户端时间与服务器时间不一致怎么办呢,所以Cache-Control就应运而生,两者都存在的情况会依照Cache-Control来执行
协商缓存,最后修改时间,同Etag差不多
http缓存就说这么多,详细的内容可以去各种前端大牛的博客里看,专门有讲的。
来源: https://www.2cto.com/kf/201710/687966.html