304

  • 写在最前面

    之前遇到很多次关于浏览器缓存和 304 的问题,但在开发的过程中没有深究,之前在开发的过程中,使用angularjs开发后台管理,在 IE 浏览器容易出现 304 问题,代码更新了,但页面仍然是之前内容,打开调试,发现是 304。

    浏览器缓存机制

    缓存对 web 有很重要的作用。
    先来个简单的示意图
    image

    判断浏览器缓存:1、当前缓存是否过期?2、服务器中的文件是否改动

    第一步 判断当前缓存是否过期

    第二步 判断服务器中文件是否改动

    浏览器缓存

    image

    浏览器缓存分为强缓存和协商缓存。当客户请求某个资源时,获取缓存的流程如下:

    • 先根据这个资源的一些 http header 判断它是否命中强