强缓存和协商缓存笔记

86 阅读1分钟

概念

  • 强缓存:浏览器本地缓存,如果在过期时间内不用向服务器发送请求获取信息。
  • 协商缓存,请求资源如果是协商缓存的资源就会向服务器发起请求,服务器判断资源有无修改需不需要更新,如果不需要就从本地缓存获取,如果需要更新则获取同时更新本地缓存

使用

  • 强缓存利用http头中的ExpiresCache-Control两个字段来控制,http1.0使用expire,通过本地时间判断有无过期,http1.1中使用Cache-Control
    • Cache-Control属性
      • private:仅浏览器可以缓存(默认值);
      • public:浏览器和代理服务器都可以缓存;
      • max-age=xxx:过期时间单位秒;
      • no-cache:不进行强缓存;
      • no-store:不强缓存,也不协商缓存)
  • 协商缓存通过header字段的EtagIf-None-MatchLast-Modifiedif-modified-since