前端css/js/html文件缓存

发布于 2022-09-11 15:04:05 字数 254 浏览 18 评论 0

用户使用Ctrl+F5强制刷新页面的时候,css/js/html文件会重新加载。

如果css/js/html文件没有做修改,却还是去重新加载,很耗时间。

查了资料,可以再文件后缀加上哈希值来判断文件是否有更新;这个方法适用于修改了文件,让浏览器覆盖掉旧文件。

但是现在,我想要的是,用户使用Ctrl+F5强制刷新页面,但是因为css/js/html文件都没有做修改,所以不用重新加载,直接读取缓存。

请问有什么办法可以实现这个需求呢?

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(3

软的没边 2022-09-18 15:04:05

你这个需求是没法实现的,首先你得知道服务器是怎么来判断是否需要更新的;其次Ctrl+F5的时候,浏览器是不会带任何标识的

春花秋月 2022-09-18 15:04:05

伪需求。
Ctrl+f5本来就是放弃缓存强制刷新,又何来的根据缓存加载?正常做好浏览器缓存策略就行了,不要去管用户刷新用的是f5还是Ctrl+f5

我很OK 2022-09-18 15:04:05

先不说需求,请先搞清楚 Ctrl+f5 是干啥的..
Ctrl+F5要的是彻底的从Server拿一份新的资源过来,所以不光要发送HTTP request给Server,而且这个请求里面连If-Modified-Since/If-None-Match都没有,这样就逼着Server不能返回304,而是把整个资源原原本本地返回一份
参考:浏览器: F5 和 Ctrl+F5的区别

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文