CacheStorage: open() 方法

安全上下文:此功能仅在 安全上下文(HTTPS)中可用,在部分或全部 支持的浏览器 中可用。

注意:此功能在 Web Workers 中可用。

open() 方法是 CacheStorage 接口的一部分,它返回一个 Promise,该 Promise 解析为与 cacheName 匹配的 Cache 对象。

您可以通过窗口中的 Window.caches 属性或工作线程中的 WorkerGlobalScope.caches 属性访问 CacheStorage

注意:如果指定的 Cache 不存在,则将创建一个使用该 cacheName 的新缓存,并返回一个解析为该新 Cache 对象的 Promise

语法

js
open(cacheName)

参数

cacheName

您要打开的缓存的名称。

返回值

一个 Promise,解析为请求的 Cache 对象。

示例

此示例来自 MDN 简单 Service Worker 示例(参见 简单 Service Worker 运行实况)。在这里,我们等待一个 InstallEvent 触发,然后运行 waitUntil() 来处理应用程序的安装过程。这包括调用 CacheStorage.open() 来创建一个新的缓存,然后使用 Cache.addAll() 向其中添加一系列资产。

js
self.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/bountyHunters.jpg",
          "/gallery/myLittleVader.jpg",
          "/gallery/snowTroopers.jpg",
        ]),
      ),
  );
});

规范

规范
Service Workers
# cache-storage-open

浏览器兼容性

BCD 表格仅在浏览器中加载

另请参阅