在浏览器地址栏按回车、F5、Ctrl+F5刷新网页的区别

转自:http://blog.csdn.net/zoohouse/article/details/7552594

概述:

“刷新”是在你现有页面的基础上,检查网页是否有更新的内容。在检查时,会保留之前的一些变量的值,因此有可能会造成刷新后网页出现错误,或者打不开的情况;

“转到”和在地址栏回车,则相当于你重新输入网页的URL访问,这种情况下,浏览器会尽量使用已经存在于本机中的缓存。也就是说,“刷新” 是取网页的新内容来更新本机缓存,在更新的同时保留之前的一些变量;“转到”则是一种全新的访问,它会尽量使用本机缓存中的文件,但不会保留之前的变量,这下应该明白了吧?另外,按着Ctrl,还可以进行强制刷新,跟转到的作用差不多。

详述-地址栏按回车刷新

在地址栏按回车分为两种情况。

一是请求的URI在浏览器缓存中未过期,此时,使用Firefox的firebug插件在浏览器里显示的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服务器,而是浏览器发现缓存中还有未过期的文件,直接把请求拦截了,firebug里面显示所谓的“请求头消息”、“响应头消息”都是浏览器“伪造”的。这种刷新,使用的网络流量是最小的,可以说完全没有,时间消耗也是最少的

二是请求的URI在浏览器缓存中已过期,此时,使用Firefox的firebug插件在浏览器里显示的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刷新
至于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刷新
最后是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

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/405036.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

[react] 为什么建议Fragment包裹元素?它的简写是什么?

[react] 为什么建议Fragment包裹元素&#xff1f;它的简写是什么&#xff1f; 为一个组件添加多个元素,可以讲你的子组件列表添加到一个分组中(<></>),并且不会再DOM增加额外节点 个人简介 我是歌谣&#xff0c;欢迎和大家一起交流前后端知识。放弃很容易&…

uboot开机logo

From: http://blog.chinaunix.net/uid-9688646-id-1998453.html 参考资料&#xff1a; 【1】U-boot开机logo的制作方法&#xff08;Tekkaman Ninja&#xff09;&#xff1a;http://blog.chinaunix.net/u1/34474/showart_2085233.html 【2】U-Boot中的Splash Screen&#xff0…

USB连接TF卡 SD卡硬件电路

1、电路芯片 TF卡芯片选择&#xff1a;GL823K。USB2.0 SD/MMC闪存读卡器单芯片。支持USB2.0高速传输&#xff0c;并符合通用串行总线规范。 它的引脚设计适合卡插口提供更容易的PCB布局。 TF卡防静电芯片&#xff1a;SMF05C。 2、电路 分享实际项目中用到的接口电路&#…

R语言-Kindle特价书爬榜示例 输出HTML小技巧

20170209更新&#xff1a; 根据回复提示&#xff0c;rvest包更新&#xff0c;原用函数html作废&#xff0c;需改用read_html 并后续amazon网页改版等 因此此文章代码失效&#xff01;各位可看评论内容了解详情 等以后有空再重写一遍代码&#xff0c;抱歉。果然代码还是放在gith…

【原创】指针和下标的10条对比

【原创】指针和下标的10条对比摘要&#xff1a;在编程语言中&#xff0c;指针和下标都是访问数据的有效手段&#xff0c;本文以C/C语言为例&#xff0c;讲解它们之间的区别。要想完全理解本文&#xff0c;读者可能需要&#xff1a;1.至少熟悉一门含有指针和下标语义的编程语言值…

[react] constructor和getInitialState有不同?

[react] constructor和getInitialState有不同&#xff1f; constructor用在class组件中getInitialState用在createReactClass实现的组件中 个人简介 我是歌谣&#xff0c;欢迎和大家一起交流前后端知识。放弃很容易&#xff0c; 但坚持一定很酷。欢迎大家一起讨论 主目录 与…

求数组中数对的最大值

题目&#xff1a; 在数组中&#xff0c;每个数字减去它右边的所有数字得到一个数对之差。求所有数对之差的最大值。 例如在数组{2, 4, 1, 16, 7, 5, 11, 9}中&#xff0c;数对之差的最大值是9&#xff0c;是16减去5的结果。 分析&#xff1a; 要使 a-b要最大&#xff0c;只有…

工业RS485接口电路设计

1、电路芯片 485芯片有很多种&#xff0c;项目中用的比较多的是高速SP3485。满足RS-485和RS-422串行协议的要求&#xff0c;兼容工业标准规范&#xff0c;数据传输速率可高达10Mbps&#xff08;带负载&#xff09;。 2、工业设计 485需要做防雷考虑、瞬态过电压抑制、阻抗匹配…

读《大道至简》有感

编程序从一开始到现在给我是“斩不断&#xff0c;理还乱”的感觉&#xff0c;有时候真的对着一个程序一点头绪都没有&#xff0c;不知该如何下手。 在两千年前的寓言故事《愚公移山》中&#xff0c;已在无形中成就了一名工程师&#xff1a;愚公。他在移山之前都有详细的计划&am…

处理局域网网速变慢问题的几个思路

在一些企业中&#xff0c;我们会构建自己的内部局域网。然而&#xff0c;有的时候会出现局域网网速变慢的情况。一个刚建的小型局域网&#xff0c;一台服务器&#xff0c;十几台工作站&#xff0c;使用一台交换机作为接入设备&#xff0c;连接线路为6类线。主要故障表现为网内计…

int a[5]={}, a+1与(int*)a+1的区别

/*int a[5]{}, &a1与(int*)a1的区别 */ #include <stdio.h>int main() {int b, *pb;char *pb2;pb &b 1;pb2 (char*)&b sizeof(b);printf("&b%#x, pb%#x, pb2%#x\n", &b, pb, pb2);printf("Equal%d\n", (void*)pb (void*)p…

[react] 装饰器(Decorator)在React中有什么应用?

[react] 装饰器(Decorator)在React中有什么应用&#xff1f; connect、withRouter&#xff0c;等类似的高阶组件都可以用装饰器来使用 个人简介 我是歌谣&#xff0c;欢迎和大家一起交流前后端知识。放弃很容易&#xff0c; 但坚持一定很酷。欢迎大家一起讨论 主目录 与歌谣…

MyBatis学习笔记(一)——MyBatis快速入门

转自孤傲苍狼的博客&#xff1a;http://www.cnblogs.com/xdp-gacl/p/4261895.html 一、Mybatis介绍 MyBatis是一个支持普通SQL查询&#xff0c;存储过程和高级映射的优秀持久层框架。MyBatis消除了几乎所有的JDBC代码和参数的手工设置以及对结果集的检索封装。MyBatis可以使用简…

一个USB HUB电路分享

1、USB HUB 当USB接口不够用的时候&#xff0c;可以采用USB HUB电路进行扩展&#xff0c;将一个USB接口扩展为多个&#xff0c;并可以使这些接口同时使用的装置。USB HUB根据所属USB协议可分为USB2.0 HUB、USB3.0 HUB与USB3.1 HUB。 选用的USB HUB芯片为 USB2514B. 参考文档&…

自言自语(2011.8.1)

我就喜欢在夜里听想清幽的曲子&#xff0c;边听边在回忆和遐想。 说说近期的心得吧。 1 做事还是很急&#xff0c;一点不像职场老手。对事情考虑的不足&#xff0c;做完了没有留下点什么&#xff0c;没有系统性的规化&#xff0c;以至于用的时候还要再现去找。很是麻烦。 2 不够…

[react] React Fiber它的目的是解决什么问题?

[react] React Fiber它的目的是解决什么问题&#xff1f; 我个人的理解&#xff1a; React 15 的 StackReconciler 方案由于递归不可中断问题&#xff0c;如果 Diff 时间过长&#xff08;JS计算时间&#xff09;&#xff0c;会造成页面 UI 的无响应&#xff08;比如输入框&…

Fedora 17删除旧内核的操作

From: http://linux.chinaitlab.com/administer/904852.html 由于Fedora更新升级非常的频繁&#xff0c;所以非常有必要清除陈旧的内核&#xff0c;方法如下&#xff1a; 1. 查看当前系统中已安装的内核相关包&#xff1a; [rootlocalhost mint]# rpm -qa|grep kernel kernel…

围魏救赵

初&#xff0c;孙膑与庞涓俱学兵法&#xff0c;庞涓仕魏为将军&#xff0c;自以能不及孙膑&#xff0c;乃召之&#xff1b;至&#xff0c;则以法断其两足而黥之&#xff0c;欲使终身废弃。齐使者至魏&#xff0c;孙膑以刑徒阴见&#xff0c;说齐使者&#xff1b;齐使者窃载与之…

高压断路器故障诊断的相关方法

一、综述 高压断路器机械故障诊断方法综述_关永刚 二、参考文献 断路器的机械振动信号小波去噪技术研究_罗光鸿高压断路器分合闸线圈电流采集实验平台与故障模拟实验研究_彭在兴混合布谷鸟算法在高压断路器故障诊断上的应用_徐其丹基于Kohonen网络的高压断路器机械故障识别方…

[react] 如何用React实现滚动动画?

[react] 如何用React实现滚动动画&#xff1f; 简单的用CssTransitionGroup插件 &#xff0c;想自己搞就 用css3 动画结束后执行&#xff0c;setState&#xff0c;滚动用requestAnimFrame 效果更佳。点击事件内增加 位置判断&#xff0c;没到就 requestAnimFrame&#xff0c;到…