Cache: метод addAll()
Базовая версия Широко доступна
Эта функция хорошо зарекомендовала себя и работает на многих устройствах и версиях браузеров. Она доступна в браузерах с апреля 2018 года.
Защищённый контекст: Эта функция доступна только в защищённых контекстах (HTTPS) в некоторых или во всех поддерживающих браузерах.
Примечание: Эта функция доступна в Web Workers.
Метод addAll() интерфейса Cache принимает массив URL-адресов, извлекает их и добавляет полученные объекты ответа в указанный кэш. Объекты запроса, созданные во время извлечения, становятся ключами для сохранённых операций с ответами.
Примечание: addAll() перезапишет любые пары «ключ-значение», ранее сохранённые в кэше, которые совпадают с запросом, но не удастся, если операция с put() перезапишет предыдущую запись кэша, сохранённую тем же методом addAll().
Синтаксис
addAll(requests)
Параметры
requests-
Массив запросов на ресурсы, которые вы хотите добавить в кэш. Это могут быть объекты
Requestили URL-адреса.Эти запросы используются как параметры для конструктора
Request(), поэтому URL-адреса подчиняются тем же правилам, что и для этого конструктора. В частности, URL-адреса могут быть относительными по отношению к базовому URL-адресу, который являетсяbaseURIв контексте окна илиWorkerGlobalScope.locationв контексте рабочего процесса.
Возвращаемое значение
Обещание Promise, которое выполняется с undefined.
Исключения
TypeError-
Схема URL не является
httpилиhttps.Код состояния ответа не находится в диапазоне 200 (то есть не является успешным ответом). Это происходит, если запрос не возвращает успешного результата, а также если запрос является запросом cross-origin no-cors (в этом случае сообщаемый статус всегда равен 0.)
Примеры
Этот блок кода ждёт срабатывания события InstallEvent, а затем выполняет waitUntil() для обработки процесса установки приложения. Это включает вызов CacheStorage.open для создания нового кэша, а затем использование addAll() для добавления ряда ресурсов в него.
this.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/",
"/gallery/bountyHunters.jpg",
"/gallery/myLittleVader.jpg",
"/gallery/snowTroopers.jpg",
]),
),
);
});
Спецификации
| Спецификация |
|---|
| Service Workers # cache-addAll |
Совместимость с браузерами
| Рабочие столы | Мобильные устройства | ||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|
| Chrome | Edge | Firefox | Opera | Safari | Chrome Android | Firefox для Android | Opera Android | Safari на iOS | Samsung Internet | WebView Android | |
addAll |
46Требуется HTTPS. |
16 | 41 | 33Требуется HTTPS. |
11.1 | 46Требуется HTTPS. |
41 | 33Требуется HTTPS. |
11.3 | 5.0Требуется HTTPS. |
46Требуется HTTPS. |
См. также
© 2005–2024 MDN contributors.
Licensed under the Creative Commons Attribution-ShareAlike License v2.5 or later.
https://developer.mozilla.org/en-US/docs/Web/API/Cache/addAll