HTTP的强制缓存策略

http缓存策略(强制缓存)

  • 浏览器初次访问服务器,服务器返回资源和Cache-Control(服务器端觉得可以被缓存就会加上Cache-control,如果觉得不被缓存就不加)
  • 浏览器再次访问服务器,首先会判断有没有设置Cache-Control,然后看Cache-Control设置的时间有没有过期,如果没有过期,直接在本地缓存里获取
  • Cache-Control是否缓存,客户端控制不了,只能服务器端Response Headers返回控制
  • Cache-Control是控制强制缓存的逻辑
  • 例如将数据强制缓存1年:Cache-Control:max-age=31536000(单位是秒)
  • 如果缓存失效了,会再次访问服务端
  • Cache-Control的值有哪些
    • max-age:本地缓存时间
    • no-cache:不缓存
    • no-store:本地不缓存,而且不需要服务端的缓存措施
    • private:只允许最终用户做缓存
    • public:允许中间代理做缓存
  • 关于Expires
    • 同Cache-Control都在Response Headers中
    • 同为控制缓存过期
    • 已被Cache-Control代替

你可能感兴趣的:(HTTP的强制缓存策略)