Http 如何缓存客户端文件,使浏览器不再费心再次请求它?

Http 如何缓存客户端文件,使浏览器不再费心再次请求它?,http,caching,http-caching,Http,Caching,Http Caching,我发送回带有以下HTTP响应头的图像: Cache-Control: private,max-age=86400 我的理解是,浏览器甚至不应该在24小时内(86400=60s*60m*24h)请求此文件 我在后续请求中看到的是,它仍然请求文件,但返回“304未修改”。这很好,但我想删除该请求/响应 需要什么样的头才能防止浏览器费心去请求文件,并让它盲目地使用本地缓存中的文件,直到该文件过期?这在HTML

我发送回带有以下HTTP响应头的图像:

Cache-Control: private,max-age=86400
我的理解是,浏览器甚至不应该在24小时内(86400=60s*60m*24h)请求此文件

我在后续请求中看到的是,它仍然请求文件,但返回“304未修改”。这很好,但我想删除该请求/响应


需要什么样的头才能防止浏览器费心去请求文件,并让它盲目地使用本地缓存中的文件,直到该文件过期?

这在HTML<5中根本无法可靠地完成


您可以在HTML5中使用或使用浏览器扩展(如)来提供此功能。

这一切都取决于您如何测试此功能。在Firefox 3.6和IE8上,单击一个链接,然后再单击一个将您移回第一页的链接,将正确使用缓存的最大年龄。再次点击URL字段中的返回键将显示相同的行为

但是,点击F5将再次请求文件,但允许304个响应


按Ctrl+F5将始终再次请求文件,将“缓存控制”和“杂注”设置为“无缓存”,强制执行200响应。

所有浏览器上的行为是否相同?这就足够了:-你说“不能可靠地完成”是什么意思?不保证浏览器会将资源保留在缓存中直到过期,但它应该至少保留一段时间:-d非常感谢。我没有意识到击打F5是个问题。当我使用一个简单的链接点击(所以,一个简单的GET)进行测试时,它的工作原理与我预期的一样。