刷新三种方式

作者: puxiaotaoc | 来源:发表于2018-08-18 21:16 被阅读19次

一、mac刷新快捷键
1、普通刷新:command +r;
2、强制刷新:command+shift+r;
二、地址栏按回车刷新
1)一是请求的URI在浏览器缓存中未过期,此时浏览器里显示的HTTP请求消息头如下:

Host    192.168.3.174:8080
User-Agent    Mozilla/5.0 (Windows NT 5.1; rv:5.0) Gecko/20100101 Firefox/5.0
Accept    text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8
Accept-Language    zh-cn,zh;q=0.5
Accept-Encoding    gzip, deflate
Accept-Charset    GB2312,utf-8;q=0.7,*;q=0.7
Connection    keep-alive

HTTP返回状态显示200 OK,但是请求并没有真正提交到HTTP服务器,而是浏览器发现缓存中还有未过期的文件,直接把请求拦截了,显示出来的“请求头消息”、“响应头消息”其实都是浏览器“伪造”的,这种刷新使用的网络流量是最少的,可以说是完全没有,时间消耗也是最少的;
2)二是请求的URI在浏览器中已过期,此时浏览器里显示的HTTP请求头消息如下:

Host    192.168.3.174:8080
User-Agent    Mozilla/5.0 (Windows NT 5.1; rv:5.0) Gecko/20100101 Firefox/5.0
Accept    text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8
Accept-Language    zh-cn,zh;q=0.5
Accept-Encoding    gzip, deflate
Accept-Charset    GB2312,utf-8;q=0.7,*;q=0.7
Connection    keep-alive
If-Modified-Since    Mon, 04 Jul 2011 10:12:40 GMT

多了一行If-Modified-Since,浏览器对这种情况的处理方法是:再问一下服务器,请求的URI在某个时间之后有没有被修改过,而这个时间是由上次HTTP响应的Last-Modified决定的,服务器鉴定之后,如果没有修改则返回304 Not Modified,浏览器收到后,从缓存里读出内容;如果有修改则返回200 OK,并返回新的内容;
三、按F5刷新
其HTTP请求头消息如下:

Host    192.168.3.174:8080
User-Agent    Mozilla/5.0 (Windows NT 5.1; rv:5.0) Gecko/20100101 Firefox/5.0
Accept    text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8
Accept-Language    zh-cn,zh;q=0.5
Accept-Encoding    gzip, deflate
Accept-Charset    GB2312,utf-8;q=0.7,*;q=0.7
Connection    keep-alive
If-Modified-Since    Mon, 04 Jul 2011 10:12:40 GMT
Cache-Control    max-age=0

多了一行Cache-Control:max-age=0,意思是说,我不管浏览器缓存中的文件过期没有,都去服务器询问一下,相当于上次HTTP响应的Expires暂时失效,服务器的响应处理流程同上;
四、Ctrl+F5刷新
其HTTP请求头如下:

Host    192.168.3.174:8080
User-Agent    Mozilla/5.0 (Windows NT 5.1; rv:5.0) Gecko/20100101 Firefox/5.0
Accept    text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8
Accept-Language    zh-cn,zh;q=0.5
Accept-Encoding    gzip, deflate
Accept-Charset    GB2312,utf-8;q=0.7,*;q=0.7
Connection    keep-alive
Pragma    no-cache
Cache-Control    no-cache

If-Modified-Since没有了,Cache-Control换成了no-cache,此外Pragma行是为了兼容HTTP1.0,作用与Cache-Control:no-cache是一样的,意思是:我不要缓存中的文件了,强制刷新,直到服务器上重新下载,于是服务器的响应处理与首次请求这个URI一样,返回200 OK和新的内容,这种刷新使用的网络流量是最大的,也是最耗时的;

参考:https://www.cnblogs.com/kevinq/p/4822140.html

相关文章

  • Spring Cloud 学习(27) --- Spring

    刷新配置信息的方式有三种:手动刷新、半自动刷新、自动刷新,其中,半自动刷新利用的是 spring cloud bu...

  • 刷新三种方式

    一、mac刷新快捷键1、普通刷新:command +r;2、强制刷新:command+shift+r;二、地址栏按...

  • 设置分页机制当前页

    如果将增删改全部放到当前页中处理有三种处理方式,都有很大弊端,暂且记录一番: 1.本地刷新 2.网络刷新(刷新当前...

  • [实战]基于Go实现Web聊天室(3种方式)

    目前实现web聊天室的方式主要有三种: Refresh 刷新 Long Polling 长轮询 WebSocket...

  • Android 高度自定义的粒子框架(支持普通View和surf

    序言 当前Android 主流的系统中粒子的实现方式大致可以分为两类三种 1. 继承普通的View,主线程刷新绘制...

  • 报告的刷新

    常见的刷新方式1.手动刷新2.打开文件自动刷新3.设置刷新频率4.设置刷新按钮第四种方式: 录制宏 视图 → 宏...

  • Html5 Server-Sent

    php代码 三种自动刷新页面的方法 websocket

  • js 刷新当前页面的三种方式

    1、reload() 方法 reload()方法用于刷新当前文档。reload() 方法类似于你浏览器上的刷新页面...

  • Vue刷新页面的三种方式

    我们在写项目的时候,经常会遇到,用户执行完某个动作,改变了某些状态,需要重新刷新页面,以此来重新渲染页面。如:用户...

  • Vue刷新页面的三种方式

    我们在写项目的时候,经常会遇到,用户执行完某个动作,改变了某些状态,需要重新刷新页面,以此来重新渲染页面。如:用户...

网友评论

    本文标题:刷新三种方式

    本文链接:https://www.haomeiwen.com/subject/thjebftx.html