Cache: addAll() 方法
注意:此功能在 Web Workers 中可用。
Cache 介面的 addAll() 方法接受一個 URL 陣列,檢索它們,並將結果響應物件新增到給定的快取中。檢索過程中建立的請求物件成為儲存的響應操作的鍵。
注意: addAll() 會覆蓋快取中先前儲存的與請求匹配的任何鍵/值對,但如果由此產生的 put() 操作會覆蓋由同一個 addAll() 方法儲存的先前快取條目,則會失敗。
語法
js
addAll(requests)
引數
requests-
要新增到快取的資源的請求陣列。這些可以是
Request物件或 URL。這些請求用作
Request()建構函式的引數,因此 URL 遵循與該建構函式相同的規則。特別是,URL 可以相對於基礎 URL,在視窗上下文中是文件的baseURI,在 worker 上下文中是WorkerGlobalScope.location。
返回值
一個 Promise,解析為 undefined。
異常
TypeError-
URL 方案不是
http或https。Response 狀態不在 200 範圍內(即,不是成功的響應。)當請求未成功返回時會發生這種情況,但當請求是跨域無 CORS 請求時也會發生這種情況(在這種情況下,報告的狀態始終為 0。)
示例
此程式碼塊等待 InstallEvent 觸發,然後執行 waitUntil() 來處理應用程式的安裝過程。這包括呼叫 CacheStorage.open 來建立一個新的快取,然後使用 addAll() 將一系列資源新增到其中。
js
this.addEventListener("install", (event) => {
event.waitUntil(
caches
.open("v1")
.then((cache) =>
cache.addAll([
"/",
"/index.html",
"/style.css",
"/app.js",
"/image-list.js",
"/star-wars-logo.jpg",
"/gallery/",
"/gallery/bountyHunters.jpg",
"/gallery/myLittleVader.jpg",
"/gallery/snowTroopers.jpg",
]),
),
);
});
規範
| 規範 |
|---|
| Service Workers # cache-addAll |
瀏覽器相容性
載入中…