展开

关键词

了解 Session、LocatStorage、Cache-Control、ETag

HTTP 无关cookie 最大 4k,loaclStroage5MB 左右了解 Cache-ControlHTTP 缓存,web 优化(常识)将某文件缓存至本地response.setHeather (‘Cache-Control v=2 这样的话 max-age=30' 就会失效Expires 和 Cache-Control 有什么区别Expires 设置的是时间点Cache-Control 设置的是时间长度如果同时设置有限使用 然而你不知道你下载的是不是和它的 300M 一样这时就需要有个 MD5,如果你们两个的 MD5 值一样,那么说明你下载的 300M=== 它的 300M文件差异越小,MD5 的差异越大了解 ETag用 cache-Control

8750

HTTP缓存(Cache-Control、Expires 、ETag)

HTTP缓存 HTTP缓存( ETag、Cache-Control)——谷歌开发者 HTTP缓存有利于web性能优化 Cache-Control 例子 假设我们首页有一个请求,请求js文件 <script 接下来在响应里设置响应头 Cache-Control: max-age=30 刷新两次首页 ? Expires Expires 是以前用来控制缓存的http头,Cache-Control是新版的API。 现在首选 Cache-Control。 注意: 因为过期标准的时间用的是本地时间,所以不靠谱,所以要游侠使用Cache-Control代替Expires 区别 Cache-Control设置时间长度 Expires 设置时间点 详细:Expires HTTP 304 没有响应体,因为不需要下载响应内容,直接用缓存就行了 ETag与 Cache-Control的区别 假设我们请求两个文件,CSS文件使用Cache-Control缓存,js文件使用ETag

3.8K40
  • 广告
    关闭

    腾讯云精选爆品盛惠抢购

    腾讯云精选爆款云服务器限时体验20元起,还有更多热门云产品满足您的上云需求

  • 您找到你想要的搜索结果了吗?
    是的
    没有找到

    response headers添加Cache-Control 和request headers添加Cache-Control 到底有啥区别

    前言 缓存是一个复合的概念,本文是http缓存系列文章之一,仅讨论Cache-Control这个字段的两个值:no-cache和max-age=0的区别。 关于Cache-Control更全面的介绍,请点击这里。 本文实验代码的运行方式,参考这里。 特别要注意:刷新触发不了Cache-Control(原因),要查看Cache-Control的效果必须(我是这么做的): 再打开一个tab 在新的tab上,先打开chrome-dev,调到Network 相关的源码在这里 response添加Cache-Control 首先我们通过给response headers添加Cache-Control,以此来实现缓存。 var myRequest = new Request('/api', { headers: { 'Cache-Control': 'no-cache' } }) 重复上面步骤,这次发现

    1.8K00

    请求的时间减去Cache-Control的值

    此时浏览器还没有本地缓存副本,服务器返回资源给浏览器,响应码是200 OK,浏览器收到资源后,把遴选公务员资源和对应的响应头一起缓存下来 第二次浏览器准备发送请求给服务器时候,浏览器会先检查上一次服务端返回的响应头信息中的Cache-Control ,它的值是一个相对值,单位为秒,表示资源在客户端缓存的最大有效期,过期时间为第一次请求的时间减去Cache-Control的值,过期时间跟当前的请求时间比较,如果本地缓存资源没过期,那么命中缓存,不再请求服务器

    11330

    如何找到cache-control header是从后台何处设置的

    在请求Fiori launchpad时,观察FuoriLaunchpad.html的请求:

    51820

    Http响应头里Cache-Control:no-cache、max-age=””和no-store

    响应头:Cache-Control:no-cache,强制每次请求直接发送给源服务器,而不经过本地缓存版本的校验。 浏览器通知服务器,本地没有缓存数据 //=============================================================================== cache-control 通俗解释: 响应头中的 Cache-Control:max-age=315360000 是通知浏览器:315360000 秒之内不要烦我,自己从缓冲区中刷新。 HTTP1.1 HTTP1.1中启用Cache-Control 来控制页面的缓存与否,这里介绍几个常用的参数: no-cache,浏览器和缓存服务器都不应该缓存页面信息; public,浏览器和缓存服务器都可以缓存页面信息 ; no-store,请求和响应的信息都不应该被存储在对方的磁盘系统中; must-revalidate,对于客户机的每次请求,代理服务器必须想服务器验证缓存是否过时 目前Cache-Control请求字段被各个浏览器支持的较好

    4500

    Nginx下关于缓存控制字段cache-control的配置说明 - 运维小结

    在请求消息或响应消息中设置 Cache-Control并不会影响另一个消息处理过程中的缓存处理过程。 Expires: 设置以分钟为单位的绝对过期时间, 优先级比Cache-Control低, 同时设置Expires和Cache-Control则后者生效. "Cache-Control"头标的值由您指定的时间来决定: - 负数 Cache-Control: no-cache - 正数或零 Cache-Control: max-age = # Cache-Control Cache-Control 通用消息头字段被用于在http 请求和响应中通过指定指令来实现缓存机制。 HTTP1.1 HTTP1.1中启用Cache-Control 来控制页面的缓存与否,Cache-Control是http1.1 中的标准,可以看成是 expires 的补充, 使用的是相对时间的概念。

    4.6K41

    【前端 · 面试 】HTTP 总结(八)—— HTTP 强缓存

    Cache-Control 在请求头和响应头中都可以使用: 请求头Cache-Control 字段列表: Cache-Control: max-age=<seconds> Cache-Control: max-stale=<seconds> Cache-Control: min-fresh=<seconds> Cache-control: no-cache Cache-control: no-store Cache-control: no-transform Cache-control: only-if-cached 响应头Cache-Control 字段列表: Cache-control: must-revalidate Cache-control: no-cache Cache-control: no-store Cache-control: no-transform Cache-control: public Cache-control 当 Expires 和 Cache-Control 同时存在时,只有 Cache-Control 生效。

    12310

    SpringMVC 教程 - HTTP 缓存

    主要使用的HTTP 的响应头Cache-Control来控制,也可以选择使用Last-Modified和ETag。 Cache-Control Spring MVC 支持多种方式配置Cache-Control。RFC 7234详细描述了这个header。 Spring MVC使用setCachePeriod(int seconds)进行配置: -1 表示不生成Cache-Control 0 使用Cache-Control: no-store n > 0 表示缓存多少秒,使用Cache-Control: max-age=n CacheControl类可以表示Cache-Control指令,是的构建缓存策略更加的简单。 比较推荐的做法是在响应中添加Cache-Control

    32440

    浏览器缓存机制

    Cache-Control/Expires Cache-Control和Expires控制文件的缓存,在缓存文件的有效时间内,浏览器直接使用本地文件,不与服务器交互。 在Cache-Control和Expires同时存在的情况下,Cache-Control的优先级高于Expires。 Cache-Control: private 告诉浏览器不要缓存这个文件。 强制刷新 F5 强制使Cache-Control/Expires失效:Cache-Control: max-age=0 此时,如果文件还使用了Last-Modified/Etag进行缓存控制,则向服务器发起 对于1,使用Cache-Control可以实现(Cache-Control的优先级高于Expires)。 对于2,使用Last-Modified或者Etag可以实现(两者可以一起使用)。

    60560

    关于 SAP 电商云首页加载时触发的 OCC API 请求

    lang=en&curr=USD Cache-Control in request headers: no-cache 客户端 HTTP 请求 cache-control 的值 为 no-cache ,告诉服务器,在发送响应给客户端之前,先进行缓存有效性验证(cache validation) 服务器返回的响应头部字段 Cache-Control 的值:private 根据下面这篇文档,带有 cache-control:private 的响应,不应该在 CDN 里缓存。 lang=en&curr=USD request header:Cache-Control: no-cache response header:public, max-age=1800 (2) /occ lang=en&curr=USD request header:Cache-Control: no-cache response header:public, max-age=1800 (3) /occ

    8230

    HTTP 头部字段 Cache Control max-age = 0 和 no-cache 的区别

    再观察请求的头部字段:cache-control: max-age=0 标头 Cache-Control: max-age=0 暗示内容立即被认为是陈旧的(并且必须重新获取),这实际上与 Cache-Control 首先了解 cache-control 的几种可能的值: no-cache: 这会指示浏览器每次使用 URL 的缓存版本之前都必须与服务器重新验证。 Cache-Control 标头有两个方面。 一侧是它可以由网络服务器(又名“原始服务器”)发送的地方。 另一端是浏览器可以发送的地方(又名“用户代理”)。 When sent by the user agent 如果用户代理使用 Cache-Control: max-age=0(又名“端到端重新验证”)发送请求,那么沿途的每个缓存都将重新验证其缓存条目(例如 另一方面,使用 Cache-Control: no-cache(又名“端到端重新加载”)发送请求不会重新验证,并且服务器在响应时不得使用缓存副本。 更多Jerry的原创文章,尽在:“汪子熙”:

    50030

    【浏览器】:缓存

    Cache-Control The Cache-Control HTTP/1.1 general-header field is used to specify directives for caching Cache-Control: no-cache 4.3.1.3. Cache-Control: max-age=31536000 ? 注:若响应中含有Cache-Control:max-age=0或Cache-Control:no-cache 或 Pragma:no-cache,可使浏览器在每次使用缓存前,都去跟服务器确认缓存的可用性 Edge:直接拉取资源 cache-control:no-cache ? Chrome、Firefox:直接拉取资源 cache-control:no-cache pragma:no-cache ?

    22530

    asp.net core 系列之Response caching(1)

    注意:Cache-Control,是用在从请求中的HTTP头,可以用来控制服务器中缓存行为。 HTTP-based caching respects request Cache-Control directives HTTP 1.1 Caching specification for the Cache-Control header (HTTP 1.1 缓存规格对于Cache-Control头)要求一个缓存遵守一个有效的Cache-Control 头,这个Cache-Control头是被客户端发送的。 当这个属性被设置为true,Cache-Control头被设置为no-store. 这种情况下,Cache-Control头被设置为location的值,并且跟着一个响应的max-age.

    19120

    HTTP缓存相关知识介绍

    以从客户端到服务器的顺序,第一层协商为Cache-Control与Expires;第二层协商为Last-Modified与Etag。 2、相关的报文头 2.1 Cache-Control 请求/响应报文头,缓存控制字段,也就是用于给资源生命期,是http/1.1引入的属性。 Cache-Control的取值可细分为两类,一类是对缓存有直接决定性的值,他们会导致后续的第二层协商被跳过,包括:no-store、public、private;另一类是类似Expires的值,只是规定了有效期 Cache-Control的取值如下: 形如: Cache-Control:max-age=0 2.2 Expires 响应报文头,代表资源过期时间,由服务器返回提供,是http1.0的属性,在与Cache-Control Expires的功能基本与Cache-Control的max-age相似,但它是指定一个过期时间点,而Cache-Control的max-age是指定了过期前的秒数。

    8120

    节点缓存VS浏览器缓存

    ,其中Cache-Control优先级比Expires高。 且从响应头可以发现: (1)节点未缓存命中时,无 Cache-Control: max-age头部; image.png (2)节点缓存命中时,有Cache-Control: max-age头部。 image.png (3)绑定源站测试,源站无Cache-Control 相关的缓存头部。 为何CDN节点会缓存住该文件? 字段,则遵循该 Cache-Control 若源站对应的 HTTP Response Header 中无 Cache-Control 字段,则:CDN 节点默认对该资源缓存600s。 但由于该文件CDN节点缓存后,会默认加上Cache-Control: max-age=600,才导致浏览器也缓存住了。

    37981

    彻底弄懂 Http 缓存机制 - 基于缓存策略三要素分解法

    问题2:如果将上述信息中的 Cache-Control 设置为 private,那么结果又会如何呢? 通过 Cache-Control:Public 设置我们可以将 Http 响应数据存储到本地,但此时并不意味着后续浏览器会直接从缓存中读取数据并使用,为啥? 而 Cache-Control:no-cache 和 Cache-Control:max-age=0 (单位是秒)相当 这里需要注意的是: Cache-Control 中指定的缓存过期策略优先级高于 Expires : no-cache Last-Modified: Tue, 08 Nov 2016 06:59:00 GMT 我们上面讲到了 Cache-Control: no-cache 相当于 Cache-Control : max-age=0,且他们都是多重策略头,我们需将其分解: Cache-Control: no-cache 等于 Cache-Control: max-age=0, 接着 Cache-Control

    66230

    利用apache的mod_headers模块实现文件缓存

    一.cache-control Cache-Control是http协议1.1中支持的缓存字段,指定请求和响应遵循的缓存机制。 详见rfc2616 14.9(Cache-Control) 其中一个最基础的策略是,在响应头中设定: Cache-control: max-age=[secs] [secs]是cache在客户端存活的秒数 ,例如 Cache-control: max-age=1800 表明cache的时间是半小时,只使用这样一个声明就可以使浏览器能够将这个HTTP响应的内容写入临时目录做cache。 (html|htm|txt)$"> header set cache-control "max-age=3600" </filesmatch> # css, js, swf类的文件缓存一个星期 <filesmatch (css|js|swf)$"> header set cache-control "max-age=604800" </filesmatch> </IfModule> 其实mod_headers

    30020

    nginx设置Expires启用浏览器缓存Leverage browser caching

    ”的头标(起到控制页面缓存的作用) 语法:expires [time|epoch|max|pff] 默认值:off expires指令控制HTTP应答中的“Expires”和“Cache-Control time值还控制"Cache-Control"的值: 负数表示no-cache 正数或零表示max-age=time epoch:指定“Expires”的值为 1 January,1970,00:00 :01 GMT max:指定“Expires”的值为31 December2037 23:59:59GMT,"Cache-Control"的值为10年。 off:不修改“Expires”和"Cache-Control"的值 expires使用了特定的时间,并且要求服务器和客户端的是中严格同步。 而Cache-Control是用max-age指令指定组件被缓存多久。 对于不支持http1.1的浏览器,还是需要expires来控制。所以最好能指定两个响应头。

    43620

    扫码关注云+社区

    领取腾讯云代金券