Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

[软技能] 第84天 刷新和强制刷新有什么区别?说说你对两者的理解 #591

Open
haizhilin2013 opened this issue Jul 8, 2019 · 7 comments
Labels
软技能 软技能

Comments

@haizhilin2013
Copy link
Collaborator

第84天 刷新和强制刷新有什么区别?说说你对两者的理解

@haizhilin2013 haizhilin2013 added the 软技能 软技能 label Jul 8, 2019
@nowherebutup
Copy link

nowherebutup commented Jul 9, 2019

  • 刷新: 若页面之前访问过,可以读取缓存的内容
  • 强制刷新: 当前页面不读取缓存的内容,所有的内容必须从服务器获取

@dondonZh
Copy link

dondonZh commented Jul 9, 2019

摘自博客:从 http 协议的角度来看
F5 和 Ctrl+R 都是普通刷新,若页面之前访问过,就会发一个空请求到服务器,服务器返回 302 ,表示资源未更新,可以使用浏览器缓存。
强制刷新 (ctrl+F5) 则不管浏览器是否缓存,都要重新去源站服务器请求资源,成功则返回 200。
可以使用 chrome 开发工具查看具体过程,大概是这样一个流程,实际讲起来更复杂。

@daisybaicai
Copy link

是否读取缓存

@pokerLife
Copy link

F5、Ctrl+F5、Ctrl+Alt+R

@AnsonZnl
Copy link
Contributor

AnsonZnl commented Jul 9, 2019

摘自博客:从 http 协议的角度来看
F5 和 Ctrl+R 都是普通刷新,若页面之前访问过,就会发一个空请求到服务器,服务器返回 302 ,表示资源未更新,可以使用浏览器缓存。
强制刷新 (ctrl+F5) 则不管浏览器是否缓存,都要重新去源站服务器请求资源,成功则返回 200。
可以使用 chrome 开发工具查看具体过程,大概是这样一个流程,实际讲起来更复杂。

是如果浏览器缓存未过期,服务端则返回304。

@jiamianmao
Copy link

摘自博客:从 http 协议的角度来看
F5 和 Ctrl+R 都是普通刷新,若页面之前访问过,就会发一个空请求到服务器,服务器返回 302 ,表示资源未更新,可以使用浏览器缓存。
强制刷新 (ctrl+F5) 则不管浏览器是否缓存,都要重新去源站服务器请求资源,成功则返回 200。
可以使用 chrome 开发工具查看具体过程,大概是这样一个流程,实际讲起来更复杂。

302 是暂时重定向。比如在 CORS 项目中,前端发出一个非简单请求的时候,浏览器会预先发送一个 options 请求,response 一般都是200 或者 302。

而浏览器缓存相关的状态码通常是304(代表资源未更新)或者 200(from cache)

性能优化——浏览器的缓存策略

@smile-2008
Copy link

摘自博客:从 http 协议的角度来看
F5 和 Ctrl+R 都是普通刷新,若页面之前访问过,就会发一个空请求到服务器,服务器返回 302 ,表示资源未更新,可以使用浏览器缓存。
强制刷新 (ctrl+F5) 则不管浏览器是否缓存,都要重新去源站服务器请求资源,成功则返回 200。
可以使用 chrome 开发工具查看具体过程,大概是这样一个流程,实际讲起来更复杂。

是如果浏览器缓存未过期,服务端则返回304。

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
软技能 软技能
Projects
None yet
Development

No branches or pull requests

8 participants