Cache.add()
Baseline Widely available
This feature is well established and works across many devices and browser versions. It’s been available across browsers since апрель 2018 г..
Метод add() интерфейса Cache принимает в качестве параметра URL, загружает его и добавляет полученный объект ответа в заданный кеш. Метод add() функционально эквивалентен следующему коду:
fetch(url).then(function (response) { if (!response.ok) { throw new TypeError("bad response status"); } return cache.put(url, response); }); Для более сложных операций, вам нужно использовать Cache.put().
Примечание: add() перезапишет любую пару ключ/значение, сохранённую ранее в кеше, соответствующем запросу.
Синтаксис
cache.add(request).then(function() { //запрос был добавлен в кеш }); Параметры
Возвращаемое значение
Promise, который разрешается с пустым значением void.
Исключения
| Исключение | Когда происходит |
|---|---|
TypeError | Схема URL не http или https.Статус ответа не из диапазона 200 (т.е., ответ не успешен). Это случается если запрос не выполняется успешно, а также, если запрос является cross-origin no-cors запросом (в таком случае, статус всегда 0). |
Примеры
Этот блок кода ожидает старта события InstallEvent , а затем запускает waitUntil для обработки процесса установки приложения. Этот процесс состоит из вызова CacheStorage.open для создания нового кеша, и использования Cache.add для добавления ресурсов в этот кеш.
this.addEventListener("install", function (event) { event.waitUntil( caches.open("v1").then(function (cache) { return cache.add("/sw-test/index.html"); }), ); }); Спецификации
| Specification |
|---|
| Service Workers Nightly> # cache-add> |