java cache-control_详解浏览器Cache-Control缓存策略
原來用的是 Expires 策略,瀏覽器可以直接從瀏覽器緩存讀取數據,而無需再次請求,它的值對應一個 GMT,來告訴瀏覽器資源緩存過期時間,如果還沒過該時間點則不發請求。
例如下面的例子,這是京東的首頁里找的一個,時間都干到 2027 年了,現在的時間是 2017 年 7 月 20,肯定還沒到失效時間,so 是 304,使用本地緩存,也就是說在失效時間之內,一直使用緩存,除非把緩存刪了。
但是這是 http1.0 的東西,現在使用的是 http1.1 的,這個可以忽略了因為這個是獲取的本地的時間,我們改動的話,會出現問題,現在都用 Cache-control 了。
cache-control 策略有的地方也叫新鮮度限值。
這個和上面說的 expires 效果是一樣的,最大時間,用來控制瀏覽器是否直接從瀏覽器緩存取數據還是重新發請求到服務器取數據。
只不過 Cache-Control 的選擇更多,設置更細致,如果同時設置的話,其優先級高于 Expires。
Cache-Control 可擁有如下值:
【注:本文源自網絡文章資源,由站長整理發布】
Public:指定響應會被緩存,并且在多用戶間共享。
Private:響應只作為私有的緩存(見下圖),不能在用戶間共享。如果要求 HTTP 認證,響應會自動設置為 private。。緩存只開放給某些特定的用戶,比如服務器的用戶,其他用戶則不能緩存這些數據。
no-cache:指定不緩存響應,表明資源不進行緩存。
no-store:用于防止重要的信息被無意的發布。在請求消息中發送將使得請求和響應消息都不使用緩存,完全不存下來。
max-age:指示客戶端該端時間內緩存都是最新的。單位為秒,就是在這個時間內,不會請求數據了,一直用的就是緩存。比如:Cache-Control:max-age=3600 表示 60 分鐘之后過期,在這 60 分鐘期間不會更新。
min-fresh :指示客戶端希望獲取一個在小于指定的時間內被更新過的資源,單位為秒:例如:Cache-Control:min-fresh =120 。向服務器獲取 2 分鐘內被更新過的資源。
max-stale:指示客戶端可以接收超出超時期間的響應消息。例如:Cache-Control:max-stale =3600 ,向服務器獲取超過緩存時間 2 分鐘的資源。
web 前端中文站 , 版權所有丨如未注明 , 均為原創丨本網站采用BY-NC-SA協議進行授權
轉載請注明原文鏈接:詳解瀏覽器 Cache-Control 緩存策略
總結
以上是生活随笔為你收集整理的java cache-control_详解浏览器Cache-Control缓存策略的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: h5页面不可 移动_H5营销|为什么H5
- 下一篇: pde中微元分析法的主要思想_有限元方法