JavaWeb-2.浏览器的缓存机制
来源:互联网 发布:js 显示代码 编辑:程序博客网 时间:2024/05/21 00:20
1.Cache-Control/Pragma
Cache-Control请求字段被各个浏览器支持得较好,而且它的优先级也比较高,它和其他一些请求字段(如Expires)同时出现时,Cache-Control会覆盖其他字段。
Pragma字段的作用和Cache-Control有点类似,它也是在HTTP头中包含一个特殊的指令,使相关的服务器遵守该指令,最常用的就是Pragma:no-cache,它和Cache-Control:no-cache的作用是一样的。
2.Expires
Expires通常的使用格式是Expires:Thu, 23 Nov 2017 03:59:35 GMT,后面跟着一个日期和时间,超过这个时间值后,缓存的内容将失效,也就是浏览器在发出请求之前检查这个页面的这个字段,看该页面是否已经过期了,过期了就重新向服务器发起请求。
3.Last-Modified/Etag
Last-Modified字段一般用于表示一个服务器上的资源的最后修改时间,资源可以是静态(静态内容自动加上Last-Modified字段)或者动态的内容(如Servlet提供了一个getLastModified方法用于检查某个动态内容是否已经更新),通过这个最后修改时间可以判断当前请求的资源是否是最新的。
一般服务端在响应头中返回一个Last-Modified字段,告诉浏览器这个页面的最后修改时间,如Last-Modified:Thu, 23 Nov 2017 02:59:35 GMT,浏览器再次请求时在请求头中增加一个If-Modified-Since:Thu, 23 Nov 2017 02:59:35 GMT字段,询问当前缓存的页面是否是最新的,如果是最新的就返回304状态码,告诉浏览器是最新的,服务器也不会传输新的数据。
与Last-Modified字段有类似功能的还有一个Etag字段,这个字段的作用是让服务端给每个页面分配一个唯一的编号,然后通过这个编号来区分当前这个页面是否是最新的。这种方式比使用Last-Modified更加灵活,但是在后端的Web服务器有多台时比较难处理,因为每个Web服务器都要记住网站的所有资源,否则浏览器返回这个编号就没有意义了。
- JavaWeb-2.浏览器的缓存机制
- 浏览器的缓存机制
- 浏览器的缓存机制
- 浏览器的缓存机制
- 浏览器的缓存机制
- 浏览器的缓存机制
- 【总结】浏览器的缓存机制
- 浏览器的缓存机制详解
- 浏览器的“刷新”&“缓存机制”
- 浏览器的“刷新”&“缓存机制”
- 浏览器HTTP的缓存机制
- 浏览器的缓存机制详解
- 浏览器http的缓存机制
- 浏览器http的缓存机制
- 浅谈浏览器的缓存机制
- 【缓存】-浏览器缓存机制
- 利用cookie 测试浏览器的缓存机制
- HTTP请求中浏览器的缓存机制
- 聚簇索引
- 无GreenDao多线程下载
- Git几块区域关系
- hdoj 2188 悼念512汶川大地震遇难同胞——选拔志愿者
- 同域名同主机,让PC端和手机端显示不同网页
- JavaWeb-2.浏览器的缓存机制
- Hibernate与 MyBatis的比较
- Linux日志查看命令
- Apple Pay Merchant IDs配置流程与生成私钥说明文档
- 判断网络是否连接
- LeetCode(16) 3Sum Closest
- 【ng2】运行 ng serve --open 时报错
- 蚂蚁金服开源:数据驱动的高交互可视化图形语法G2
- css3配合jq的3d立体跑马灯幻灯片