Cache.keys()

Baseline Widely available

This feature is well established and works across many devices and browser versions. It’s been available across browsers since April 2018.

Expérimental: Cette fonction est expérimentale
Puisque cette fonction est toujours en développement dans certains navigateurs, veuillez consulter le tableau de compatibilité pour les préfixes à utiliser selon les navigateurs.
Il convient de noter qu'une fonctionnalité expérimentale peut voir sa syntaxe ou son comportement modifié dans le futur en fonction des évolutions de la spécification.

La méthode keys() de l'interface Cache retourne une Promesse qui est résolue en un tableau de clé de Cache.

Les requêtes sont retournées dans le même ordre que l'ordre d'insertion.

Note : Les requêtes avec des URLs déjà présentes mais des headers différents peuvent être retournées si leurs réponses comportent le header VARY.

Syntaxe

js
cache.keys(request, { options }).then(function (response) {
  // fait quelque chose avec votre tableau de réponses
});

Paramètres

request Facultatif

La Requête à retourner, si une clé en particulier est désirée.

options Facultatif

Un objet dont les paramètres contrôlent comment le matching est effectué lors de l'opération keys. Les options disponibles sont :

  • ignoreSearch: Un Boolean qui spécifie si le matching doit ignorer ou non la query string dans l'url. Si mis à true, la partie ?value=bar de l'url http://foo.com/?value=bar sera ignorée lors du matching. Est à false par défaut.
  • ignoreMethod: Un Boolean qui, quand mis à true, empêche les opérations de matching de valider la méthode HTTP de la Requête (en temps normal, seules GET et HEAD sont autorisées). Est à false par défaut.
  • ignoreVary: Un Boolean qui, quand mis à true, indique à l'opération de matching de ne pas effectuer le matching VARY des header. En d'autres termes, si l'URL correspond, un match sera obtenu peu importe que la Réponse ait un header VARY ou non. Est à false par défaut.
  • cacheName: Une DOMString qui représente un cache spécifique où effectuer la recherche. A noter que cette option est ignorée par Cache.keys().

Retour

Une Promesse qui est résolue en un tableau de clé de Cache.

Exemples

js
caches.open("v1").then(function (cache) {
  cache.keys().then(function (keys) {
    keys.forEach(function (request, index, array) {
      cache.delete(request);
    });
  });
});

Spécifications

Specification
Service Workers
# cache-keys

Compatibilité des navigateurs

BCD tables only load in the browser

Voir aussi