道阻且长,行则将至。埋头苦干,不鸣则已,一鸣惊人!加油,骚年!
背景
今天在使用 Google 浏览器逛 CSDN 论坛时,有一个图标感觉显示有异常,但是不论我怎么刷新都没有用。
在我以为自己又发现了 CSDN 一个 BUG ,兴高采烈的去反馈给客服时,客服告诉我他那边是正常的,我就纳闷了。
正当我疑惑不解时,客服建议我使用 Ctrl + F5 强制刷新试试看。我试了一下,诶,好像真的好了呐!于是我又陷入了沉思,我使用的刷新(F5)与客服推荐我使用的强制刷新(Ctrl + F5)有什么不一样呢?
初步理解
简单从网上找了一下答案,总结下来,发现说的大概是如下两层意思
- F5 刷新:通常只是刷新本地缓存;
- Ctrl + F5 强制刷新:可以把临时文件删除,再重新从服务器下载,也就是彻底刷新页面了。
到这里我基本明白一些猫腻了,自己总结了一下,大概就是使用 F5 刷新,只会把 “临时工” 清理掉,再从新加载;而使用 Ctrl + F5 强制刷新,则是把 “长期工” 和 “临时工” 全部清空,然后全部重新获取。
深入理解
我觉得还是有点不满足,于是又继续深挖,开始查资料,这篇文章给了我一些思路,参考链接:简书:F5刷新和Ctrl+F5刷新;
在 Google 浏览器中,使用 Ctrl + Shift + I 快捷键,打开开发者工具,也可以按照下图所示打开开发者工具。
刚打开的界面,什么都没有,在我使用 F5 刷新之后,看到了不一样的内容
从上图中,我看到了很多类似 PNG 的图片,在 Size 标签中看到了一些不同的显示,我点击左侧红框最后一张图片,打开后如下,貌似就是这个网站中的某一张图片。
接着在右侧红框中,看到了关于 Size 的一些提示,大概有如下两种
memory cache
:内存缓存,就是暂时存储在内存中,关闭该页面或关闭该软件等,这些资源就会被释放掉;这样的话我就可以理解为,每次刷新,这些内容就会重新加载一遍,因为是存在内存中的,只是临时保存而已,就相当于之前理解的 “临时工” 。disk cache
:磁盘缓存,这个就相当于存储在我们电脑的硬盘当中,关闭该页面,这些资源不会被释放掉;嗷~,原来是这样呀,我之前按下 F5 刷新时,这些东西是不会被重新加载的,而是会直接从磁盘中读取。也就相当于之前理解的 “长期工” 。
测试验证
明白了上述结论后,我决定自己尝试一下。
- 初始界面
- 使用 F5 刷新后的界面,发现大部分 PNG 格式的文件,还是从 memory cache 中获取,并没用从服务器中重新加载。
- 使用 Ctrl + F5 刷新后的界面,可以看到很多文件都重新加载了,比如 PNG 格式的图片文件等。
结果总结
当遇到某些界面,使用 F5 刷新也不能解决时,可以尝试使用 “Ctrl + F5” 强制刷新。
浏览器本身也是有强制刷新功能的,以 Google 浏览器为例,可以参考此网站:Chrome DevTools:Keyboard Shortcuts,总结相关内容如下表
全局快捷键 | Windows | Mac |
---|---|---|
刷新页面 | F5、Ctrl + R | Cmd + R |
刷新忽略缓存内容的页面 | Ctrl + F5、Ctrl + Shift + R | Cmd + Shift + R |
如果文章内容有误,麻烦评论/私信多多指教,谢谢!如果觉得文章内容还不错,记得一键三连哦(点赞、收藏、留言),您的支持就是对我最大的鼓励,谢谢您嘞!