http协议缓存小结
缓存可以使用expire方式,设置到期时间,缓存的时间等于expire设置的时间减去当前的时间
也可以使用no-cache的方式进行缓存,当设置了no-cache的方式时,以no-cache的为准,expire不起作用
no-cache下常见的有no-store,no-cache,max-age,must-revalidate
no-store,不做缓存,每次返回200,拉取最新的资源
no-cache缓存一份,每次会读取最新的缓存内容
max-age配合must-revalidate使用,每次校验是否过期,如果没过期就读取缓存返回403,当设置了no-cache时,以no-cache为准
如何判断是否是最新的缓存
浏览器会记录上次http请求的last-modified和E-tag分别保存在本地的if-modified-since和if-none-match字段里,
发送请求时会带上,if-none-match和if-modified-since字段去服务端,和Etag和last-modified比较,
这两组也可以单独比较来判断缓存是否是最新
http协议缓存小结的更多相关文章
- iOS开发网络篇—网络请求(HTTP协议)小结
iOS开发网络篇—网络请求(HTTP协议)小结 iOS开发网络篇—网络请求(HTTP协议)小结 1. 聊一下HTTP协议(协议的完整的通信过程) 2.通信过程 1> 请求 * 客户端 --> ...
- Web缓存(一) - HTTP协议缓存
为什么要使用 Web 缓存 Web缓存一般分为浏览器缓存.代理服务器缓存以及网关缓存,本文主要讲的是 浏览器缓存,其它两种缓存大家自行去了解下. Web 缓存游走于服务器和客户端之间.这个服务器可能是 ...
- 06 HTTP协议缓存控制
一:HTTP协议缓存控制 第1次请求时 200 ok 第2次请求时 304 Not Modified 未修改状态 解释: 在网络上,有一些缓存服务器,另, 浏览器自身也有缓存功能. 当我们第一次某图片 ...
- 浏览器 HTTP 协议缓存机制详解
最近在准备优化日志请求时遇到了一些令人疑惑的问题,比如为什么响应头里出现了两个 cache control.为什么明明设置了 no cache 却还是发请求,为什么多次访问时有时请求里带了 etag, ...
- HTTP协议缓存机制的应用
缓存的目 的是减少相应延迟 和 减少网络带宽消耗, 比如 css. js.图片这类静态资源应该进行缓存.实际项目 一般使用反向代理服务器(如 nginx. apache 等) 进行缓存. 关键字:ca ...
- HTTP协议缓存策略深入详解之ETAG妙用
Etag是什么: Etag 是URL的Entity Tag,用于标示URL对象是否改变,区分不同语言和Session等等.具体内部含义是使服务器控制的,就像Cookie那样. HTTP协议规格说明定义 ...
- nginx平台初识(二) 浏览器 HTTP 协议缓存机制详解
1.缓存的分类 缓存分为服务端侧(server side,比如 Nginx.Apache)和客户端侧(client side,比如 web browser). 服务端缓存又分为 代理服务器缓存 和 反 ...
- ABP module-zero +AdminLTE+Bootstrap Table+jQuery权限管理系统第十五节--缓存小结与ABP框架项目中 Redis Cache的实现
返回总目录:ABP+AdminLTE+Bootstrap Table权限管理系统一期 缓存 为什么要用缓存 为什么要用缓存呢,说缓存之前先说使用缓存的优点. 减少寄宿服务器的往返调用(round-tr ...
- AJAX-URL-HTTP协议-缓存-DOM操作-HTML元素事件
1.URL 1.URL的作用 用于来表示任意一个资源的位置(互联网上). 协议+主机名+文件目录结构+文件名称 2.详解 格式: <scheme>://<user>:<p ...
随机推荐
- CentOS6,7不同
centos6与centos7,防火墙,开机自启不同 6用iptables,7用firewall-cmd http://www.cnblogs.com/liyuanhong/articles/7064 ...
- JAVA-用HttpClient来模拟浏览器GET,POST
一般的情况下我们都是使用IE或者Navigator浏览器来访问一个WEB服务器,用来浏览页面查看信息或者提交一些数据等等.所访问的这些页面有的仅仅是一些普通的页面,有的需要用户登录后方可使用,或者需要 ...
- cmake 查看配置选项
cmake 查看配置选项可以用如下命令 cmake . -LH 查看help > cmake -h cmake version 2.6-patch 4 Usage cmake [optio ...
- 全球数据库-->基金/管理产品-->分类/行业平均
ETF分类 GIFS台湾注册基金 GIFS开放式分类 GIFS德国注册基金 GIFS意大利注册基金 GIFS新兴市场 GIFS新加坡保险连结 GIFS新加坡注册基金 GIFS日本 GIFS比利时注册基 ...
- Dom4j入门
一.Dom4j API生成xml文件 @Test public void bulidXmlByDom4j(){ //创建document对象 Document document = DocumentH ...
- docker 构建 spring boot项目
在docker 开始部署springBoot项目 1.在centos7 ~ 创建一个文件夹docker 里面放置 上面的Dockerfile 和 springBoot 打包的项目docker_spri ...
- 马婕 2014MBA专硕考试 词汇每日一练(转)
2013-6-8 1. To ensure its sustained progress in economy, the government has _______ a series of poli ...
- 四)Spring + Quartz
使用Quartz默认配置 <?xml version="1.0" encoding="UTF-8"?> <beans xmlns=" ...
- __lll_mutex_lock_wait的错误原因
1. x86_64栈(glib 2.4): free时: (gdb) bt #0 0x00002b9405ea1c38 in __lll_mutex_lock_wait () from /lib64 ...
- eclipse启动tomcat出现内存溢出错误 java.lang.OutOfMemoryError: PermGen space
发布工程后,启动tomcat出现如下内存溢出错误: java.lang.OutOfMemoryError: PermGen space ... java.lang.OutOfMemoryError: ...