0
点赞
收藏
分享

微信扫一扫

Http 缓存原来如此, 牛波牛波

Http 缓存原来如此, 牛波牛波_修改时间

🍁 作者:知识浅谈,CSDN博客专家,华为云云享专家,阿里云签约博主,InfoQ签约作者
📌 擅长领域:全栈工程师、爬虫、ACM算法
💒 公众号:知识浅谈

🤞这次都给他拿下🤞
Http缓存含有两种形式的缓存:包括强缓存和协商缓存.

🎈强缓存

  • http1.0 中:设置expires :表示缓存过期的日期
  • http1.1中: 设置为cache-control: 表示的是缓存的存活时间 如 300 表示的是存活5分钟

如果cache-control 和 expire 同时存在的时候,则会按照cache-control为主.

Http 缓存原来如此, 牛波牛波_数据_02

🎈协商缓存

服务器进行判断的一种缓存,通过携带资源标识到服务器进行请求查看资源是否已经发生变化,如果没有发变化就告诉前端去缓存中去读取. 返回304表示去缓存中去读.

  • http1.0 使用的Last-modified标志,精确到秒,表示最后一次修改的时间, 像服务端请求的时候,携带Last-modified 和 if-modified-sine 查看服务端的数据的修改时间,如果修改时间大于lastmodified返回数据和 新的 last-modified.
  • http1.1中使用的Etag 表示,这个是对数据的一种hash求值,第一次请求资源返回的时候,返回数据的Etag,再次请求的时候,携带Etag 和If-not-matched, 在后端查找数据并求出新的hash值然后与Etag进行比较,如果不一样,表示数据已经修该,返回新的数据和新的Etag.
    Etag虽然更精确,但是Last-modified只需要携带时间,不需要计算hash值.所以效率较高,但是Last-modified的时间智能精确到秒.
  • Http 缓存原来如此, 牛波牛波_修改时间_03

🍚总结

以上就是关于https的缓存的相关知识,希望有所帮助.

举报

相关推荐

0 条评论