Cache.add()
Die add()
Methode des Cache
Interface nimmt eine URL, ruft sie ab und fügt das resultierende Objekt zum gegebenen Cache. Die add()
Methode gleicht funktional dem folgenden:
fetch(url).then(function(response) {
if (!response.ok) {
throw new TypeError('bad response status');
}
return cache.put(url, response);
})
Für komplexere Operationen müssen Sie Cache.put()
direkt verwenden.
Hinweis: add()
wird alle zuvor im Cache gespeicherten Schlüssel-Wert-Paare die der Request gleichen überschreiben.
Syntax
cache.add(request).then(function() { // request wurde dem Cache hinzugefügt });
Parameter
- request
- Die Request, die dem Cache hinzugefügt werden soll. Dies kann ein
Request
Objekt oder eine URL sein.
Rückgabewert
Eine Promise
, die auf void auflöst.
Exceptions
Exception | Tritt auf wenn |
---|---|
TypeError |
Das URL-Schema nicht Der Antwortstatus ist nicht im 200 Bereich (d.h. keine erfolgreiche Antwort) Dies tritt auf, wenn die Request nicht erfolgreich zurückgegeben wird aber auch wenn die Request eine cross-origin no-cors Request ist (In diesem Fall ist der Status immer 0.) |
Beispiele
Dieser Codeblock wartet darauf, dass ein InstallEvent
ausgelöst wird, ruft dann waitUntil()
auf, um den Installationsprozess der Applikation einzuleiten. Dies beinhaltet den Aufruf von CacheStorage.open
um einen neuen Cache zu erstellen, um dann mittels Cache.add
etwas zu diesem hinzuzufügen.
this.addEventListener('install', function(event) {
event.waitUntil(
caches.open('v1').then(function(cache) {
return cache.add('/sw-test/index.html');
})
);
});
Spezifikationen
Specification | Status | Comment |
---|---|---|
Service Workers Die Definition von 'Cache: add' in dieser Spezifikation. |
Arbeitsentwurf | Erstdefinition. |
Browserkompatibilität
BCD tables only load in the browser