97国产精品视频人人做人人爱,3344在线观看无码,成年人国产视频,欧美日一级片,在线看AV天堂,高清无码一本到东京热,欧美一级黄片一区2区,免费又爽又刺激高潮网址

JavaScript中的緩存API

2020-7-8    seo達人

了解如何使用JavaScript中的Cache API緩存資源。


Cache API允許服務工作者對要緩存的資源(HTML頁面、CSS、JavaScript文件、圖片、JSON等)進行控制。通過Cache API,服務工作者可以緩存資源以供脫機使用,并在以后檢索它們。


檢測Cache支持

檢查 caches 對象在 window 中是否可用。


let isCacheSupported = 'caches' in window;

caches 是 CacheStorage 的一個實例。


創建/初始化Cache

我們可以使用 open 方法創建一個具有 name 的緩存,這將返回 promise。如果緩存已經存在,則不會創建新的緩存。


caches.open('cacheName').then( cache => {

});

你不能訪問為其他源(域)設置的緩存。

你正在創建的緩存將為你的域創建。

你可以為同一個域添加多個緩存,可以通過 caches.keys() 訪問。

將項目添加到緩存

可以使用三種方法 add,addAll,set 來緩存資源。 add() 和 addAll() 方法自動獲取資源并對其進行緩存,而在 set 方法中,我們將獲取數據并設置緩存。


add

let cacheName = 'userSettings';

let url = '/api/get/usersettings';

caches.open(cacheName).then( cache => {

  cache.add(url).then( () => {

      console.log("Data cached ")

   });

});

在上面的代碼中,內部對 /api/get/usersettings url的請求已發送到服務器,一旦接收到數據,響應將被緩存。


addAll

addAll 接受URL數組,并在緩存所有資源時返回Promise。


let urls = ['/get/userSettings?userId=1', '/get/userDetails'];

caches.open(cacheName).then( cache => {

cache.addAll(urls).then( () => {

      console.log("Data cached ")

   });

});

Cache.add/Cache.addAll 不緩存 Response.status 值不在200范圍內的響應,Cache.put 可以讓你存儲任何請求/響應對。


put

put 為當前的 Cache 對象添加一個key/value對,在 put 中,我們需要手動獲取請求并設置值。


注意:put() 將覆蓋先前存儲在高速緩存中與請求匹配的任何鍵/值對。


let cacheName = 'userSettings';

let url = '/api/get/userSettings';

fetch(url).then(res => {

 return caches.open(cacheName).then(cache => {

   return cache.put(url, res);

 })

})

從緩存中檢索

使用 cache.match() 可以得到存儲到URL的 Response。


const cacheName = 'userSettings'

const url = '/api/get/userSettings'

caches.open(cacheName).then(cache => {

 cache.match(url).then(settings => {

   console.log(settings);

 }

});

settings 是一個響應對象,它看起來像


Response {

 body: (...),

 bodyUsed: false,

 headers: Headers,

 ok: true,

 status: 200,

 statusText: "OK",

 type: "basic",

 url: "https://test.com/api/get/userSettings"

}

檢索緩存中的所有項目

cache 對象包含 keys 方法,這些方法將擁有當前緩存對象的所有url。


caches.open(cacheName).then( (cache) => {

 cache.keys().then((arrayOfRequest) => {

     console.log(arrayOfRequest); // [Request,  Request]

 });

});

arrayOfRequest是一個Request對象數組,其中包含有關請求的所有詳細信息。


檢索所有緩存

caches.keys().then(keys => {

 // keys是一個數組,其中包含鍵的列表

})

從緩存中刪除項目

可以對 cache 對象使用 delete 方法來刪除特定的緩存請求。


let cacheName = userSettings;

let urlToDelete = '/api/get/userSettings';

caches.open(cacheName).then(cache => {

 cache.delete(urlToDelete)

})

完全刪除緩存

caches.delete(cacheName).then(() => {

  console.log('Cache successfully deleted!');

})

藍藍設計www.0391cbd.com )是一家專注而深入的界面設計公司,為期望卓越的國內外企業提供卓越的UI界面設計、BS界面設計 、 cs界面設計 、 ipad界面設計 、 包裝設計 、 圖標定制 、 用戶體驗 、交互設計、 網站建設 平面設計服務

日歷

鏈接

個人資料

藍藍設計的小編 http://www.0391cbd.com

存檔

主站蜘蛛池模板: 在线免费a视频| 91在线激情在线观看| 中文字幕人妻av一区二区| 国产精品久久精品| 亚洲V日韩V无码一区二区| 亚洲免费人成影院| 玖玖免费视频在线观看| 五月婷婷导航| 欧美成人免费午夜全| 亚洲一区黄色| 国产一二视频| 午夜国产不卡在线观看视频| 亚洲天堂久久久| 国产黄网站在线观看| 青青草91视频| 国产精品国产三级国产专业不 | 欧美成人看片一区二区三区| 九九视频免费在线观看| 久久77777| 2021国产精品自产拍在线| 伊人久久大香线蕉影院| 国产高清在线观看91精品| 国产丝袜精品| 免费国产高清精品一区在线| 亚洲精品va| 综合人妻久久一区二区精品| 超碰色了色| 亚洲国产日韩视频观看| 九九九国产| 欧美午夜视频在线| 中文字幕久久波多野结衣| 54pao国产成人免费视频| 婷婷色一区二区三区| 毛片网站免费在线观看| 日本道综合一本久久久88| h网站在线播放| 91久久国产综合精品女同我| 日韩国产黄色网站| 一本视频精品中文字幕| 亚洲av无码专区久久蜜芽| 国产精品视频第一专区| 国产99欧美精品久久精品久久| 国产成人综合亚洲欧洲色就色| 欧美福利在线观看| 青青草原国产av福利网站| 97人人模人人爽人人喊小说| 在线播放91| 在线中文字幕网| 国产精品3p视频| 精品久久久久久久久久久| 青草视频久久| 国产在线拍偷自揄拍精品| 精品国产成人a在线观看| 97影院午夜在线观看视频| 亚洲男人天堂2020| 国产成人免费观看在线视频| 乱系列中文字幕在线视频| 美女无遮挡被啪啪到高潮免费| 亚洲国产精品VA在线看黑人| 色婷婷狠狠干| 美女被操黄色视频网站| 久精品色妇丰满人妻| 欧美一级特黄aaaaaa在线看片| 在线播放国产99re| 国产亚洲日韩av在线| 重口调教一区二区视频| 爱做久久久久久| 午夜免费小视频| 免费看的一级毛片| 福利在线不卡| 欧美日韩国产在线人成app| 日韩第一页在线| 午夜影院a级片| 亚洲 欧美 中文 AⅤ在线视频| 中文字幕在线一区二区在线| 国产在线拍偷自揄拍精品| 国产91透明丝袜美腿在线| 久久夜夜视频| 在线观看国产精品一区| 国产欧美性爱网| 青草视频网站在线观看| 中文字幕在线看|