浏览器缓存机制(强制缓存,协商缓存)
浏览器缓存机制(强制缓存,协商缓存)
- 1. 强制缓存
- (1)Expires
- (2)Cache-Control
- 2. 协商缓存
- (1)Last-Modified / If-Modified-Since
- (2)Etag / If-None-Match
优先级:强制缓存 > 协商缓存
1. 强制缓存
在有效时间内,不会向服务器发送请求,直接找缓存
控制强制缓存的字段分别是Expires
和Cache-Control
优先级:Cache-Control
> Expires
(1)Expires
Expires
的时间值是绝对值,对比客户端的时间与Expires
的时间
> Response Headers
(2)Cache-Control
Cache-Control
的时间值是相对值,max-age=600
代表缓存内容将在600秒后失效
> Response Headers
2. 协商缓存
强制缓存失效后,浏览器携带缓存标识向服务器发起请求,由服务器根据缓存标识决定是否使用缓存
控制协商缓存的字段分别有:Last-Modified
/ If-Modified-Since
和Etag
/ If-None-Match
优先级:Etag
/ If-None-Match
> Last-Modified
/ If-Modified-Since
(1)Last-Modified / If-Modified-Since
Last-Modified
是由服务器发送给客户端的HTTP响应头标签,时间值是当前资源文件的修改时间
> Response Headers
If-Modified-Since
是由客户端发送给服务器的HTTP请求头标签,客户端再次发起该请求时,会携带上次请求返回的Last-Modified
的时间值,对比If-Modified-Since
的时间和该资源在服务器端最后被修改的时间,决定是否更新资源
> Request Headers
(2)Etag / If-None-Match
Etag
是由服务器发送给客户端的HTTP响应头标签,是服务器端生成的资源文件的一个唯一标识
> Response Headers
If-None-Match
是由客户端发送给服务器的HTTP请求头标签,客户端再次发起该请求时,会携带上次请求返回的Etag
值,对比服务器端的Etag
值和If-None-Match
的值,决定是否更新资源
> Request Headers
浏览器缓存机制(强制缓存,协商缓存)相关推荐
- 浏览器的缓存机制 优点 缺点 协商缓存和强缓存 浏览器缓存过程 如何判断强缓存是否过期
缓存的优点: 减少了不必要的数据传输,节省带宽 减少服务器的负担,提升网站性能 加快了客户端加载网页的速度 用户体验友好 缺点: 资源如果有更改,会导致客户端不及时更新就会造成用户获取信息滞后 当浏览 ...
- 前端更新需要清空浏览器缓存_浏览器缓存机制分析及前端缓存清理
浏览器缓存机制分析及前端缓存清理 发布时间:2018-06-03 16:56, 浏览次数:857 本文主题:理清浏览器的缓存机制的内部逻辑,并给出避免浏览器缓存的相关解决方案 相信很多新手前端发布页面 ...
- 前端协商缓存强缓存如何使用_http协商缓存与强缓存
概述 良好的缓存策略可以降低资源的重复加载,提高网页的整体加载速度.通常浏览器的缓存策略分为两种:强缓存和协商缓存. 基本原理浏览器在加载资源的时候,会先根据这个资源的一些http header判断他 ...
- java 强制清除缓存_IDEA强制清除Maven缓存的方法示例
重新导入依赖的常见方式 下面图中的刷新按钮,在我的机器上,并不能每次都正确导入pom.xml中写的依赖项,而是导入之前pom.xml的依赖(读了缓存中的pom.xml). 当然除了这些,还可以下面这样 ...
- mysql php 缓存机制_mysql数据库查询缓存原理是什么
mysql数据库查询缓存原理是:1.缓存SELECT操作的结果集和SQL语句,key为sql,value为查询结果集:2.如果新的SELECT语句到了,以这个sql为key去缓存中查询,如果匹配,就把 ...
- mysql 强制不走缓存_MySQL - 强制不使用缓存来测试查询速度
我正在测试MySQL中一些查询的速度. 数据库正在缓存这些查询,这使我在测试这些查询的速度时难以获得可靠的结果. 有没有办法禁用查询缓存? 系统:Linux上的MySQL 4虚拟主机,我可以访问PHP ...
- 浏览器缓存机制(强缓存和协商缓存)总结
文章目录 前言 缓存过程的分析 强缓存 Expires Cache-Control 协商缓存 Last-Modified和If-Modified-Since ETag和If-None-Match 两者 ...
- 浏览器协商缓存与强制缓存经典版
浏览器的缓存机制也就是我们说的HTTP缓存机制,其机制是根据HTTP报文的缓存标识进行的,所以在分析浏览器缓存机制之前,我们先使用图文简单介绍一下HTTP报文,HTTP报文分为两种: HTTP请求(R ...
- 浏览器-缓存(协商缓存和强制缓存)
1.强制缓存 [1]定义 强制缓存就是说在第一次访问服务器获取到数据之后,在过期时间以内不会去重复请求,而是通过浏览器缓存拿去数据: 过期时间:在响应头中存在一个属性 http1.1版本 :强制缓存通 ...
- 浏览器缓存机制(强缓存和协商缓存)
1.为什么需要浏览器缓存? 当我们访问同一个页面时,请求资源.数据都是需要一定的耗时,如果可以将一些资源缓存下来,那么从第二次访问开始,就可以减少加载时间,提高用户体验,也能减轻服务器的压力 2.有哪 ...
最新文章
- 在ASP.NET中使用WINDOWS模式登录SQL数据库
- beast linux加密,PHP-Beast v2.2发布,PHP源码加密扩展
- Java笔记:成员变量,局部变量,类变量,实例变量以及注意事项
- 拉勾网《32个Java面试必考点》学习笔记之二------操作系统与网络知识
- Resource 资源 ---Day09 2014-06-13
- html 怎么在画布上绘制一个圆,javascript – 如何在画布上画一个圆圈?
- callbackend entry point - iwfndcl_mgw_request_manager~read_entity
- 基于sobel算法的边缘检测设计与实现
- TIDB统计信息维护
- 计算机单词 硬件类、软件类、网络类、其他
- Java网络编程——UDP编程
- Java整数的所有质因数,用JAVA将一个正整数分解成质因数,例如输入90,打印出90=2*3*3*5...
- 【方向盘】2021年JVM生态报告:Java 11使用率超Java 8
- 生活杂谈-简单电器维修知识-2
- Microsoft Edge逃离360之路
- Redis记录:Invalid argument during startup: Failed to open the .conf file
- 电子计算机的基本结构基于存储程序,计算机有答案
- window 安装 deepin双系统 (thinkpad install deepin)
- 我的2021年总结 : 涅磐没有重生
- R语言非参数检验多重比较
热门文章
- Liferay环境搭建、简单说明与相关资料
- colormap色阶设置
- java 打开ppt_如何使用Java读取PPT文本和图片
- 性能最好的七大免费杀毒软件排行榜
- IOS开发教程第一季之03多线程day3--最大并发数,队列的暂停,取消和恢复、操作优先级、线程监听、多线程下UITableView显示图片案例
- Arduino 开发板介绍及对比
- Adobe Flash Player 34.0.0.92及可用版修改方法 (2021-01-23
- 文件服务器ipc,看图理解进程间通信IPC
- 计算机专业想考海关,2018年国考想考海关系统 你得知道这六件事情
- python中shuffle怎么用_Python|有趣的shuffle方法