CacheStorage.open()

The open() method of the CacheStorage interface returns a Promise that resolves to the Cache object matching the cacheName.

You can access CacheStorage through the global caches property.

Note: If the specified Cache does not exist, a new cache is created with that cacheName and a Promise that resolves to this new Cache object is returned.

Syntax

caches.open(cacheName).then(function(cache) {
  // Do something with your cache
});

Parameters

cacheName
The name of the cache you want to open.

Return value

A Promise that resolves to the requested Cache object.

Examples

This example is from the MDN sw-test example (see sw-test running live). Here we wait for an InstallEvent to fire, then runs waitUntil() to handle the install process for the app. This consists of calling CacheStorage.open() to create a new cache, then using Cache.addAll() to add a series of assets to it.

self.addEventListener('install', function(event) {
  event.waitUntil(
    caches.open('v1').then(function(cache) {
      return cache.addAll([
        '/sw-test/',
        '/sw-test/index.html',
        '/sw-test/style.css',
        '/sw-test/app.js',
        '/sw-test/image-list.js',
        '/sw-test/star-wars-logo.jpg',
        '/sw-test/gallery/bountyHunters.jpg',
        '/sw-test/gallery/myLittleVader.jpg',
        '/sw-test/gallery/snowTroopers.jpg'
      ]);
    })
  );

Specifications

Specification Status Comment
Service Workers
The definition of 'CacheStorage: open' in that specification.
Working Draft Initial definition.

Browser compatibility

BCD tables only load in the browser

See also