为何文档未过期(足够新鲜)时,刷新浏览器(chrome)时却发生了缓存再验证请求?

我在试图用node实现一个简单的服务器时,发现了这个问题,在请求返回中同时设置了Expires及Cache-Control


res.setHeader('Expires', expires.toUTCString());
res.setHeader('Cache-Control', 'max-age=' + config.Expires.maxAge);

照理说如果文档没有过max-age值得情况下,浏览器只会在缓存中寻找文档,而不会发生再验证请求才对,可是为啥在每次刷新浏览器的时候,请求中都会有If-Modified-Since字段,即进行了再验证

clipboard.png

我在新的浏览器tab中请求该资源的时候,则是200的状态码,且没有产生向服务器的请求,即缓存命中

阅读 3.1k
撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题
宣传栏