ServiceWorkerContainer: метод startMessages()
Базовая версия Широко доступна
Эта функция хорошо отработана и работает на многих устройствах и версиях браузеров. Она доступна во всех браузерах с апреля 2018 года.
Безопасный контекст: Эта функция доступна только в безопасных контекстах (HTTPS) в некоторых или во всех поддерживающих браузерах.
Примечание: Эта функция доступна в API веб-воркеров.
Метод startMessages() интерфейса ServiceWorkerContainer явно запускает поток отправки сообщений от сервис-воркера к страницам под его управлением (например, отправленных через Client.postMessage()). Это позволяет среагировать на отправленные сообщения раньше, даже до завершения загрузки контента страницы.
Описание
По умолчанию все сообщения, отправленные от управляющего сервис-воркера страницы на страницу (с помощью Client.postMessage()), помещаются в очередь во время загрузки страницы и отправляются только после загрузки и обработки HTML-документа страницы (т.е. после срабатывания события DOMContentLoaded). Можно начать отправку сообщений раньше, вызвав ServiceWorkerContainer.startMessages(), например, если обработчик сообщений был вызван с помощью EventTarget.addEventListener() до завершения загрузки страницы, но нужно начать обработку сообщений сразу.
Примечание: Сообщения начинают отправляться автоматически при непосредственном задании обработчика с помощью onmessage. В этом случае startMessages() не требуется.
Синтаксис
startMessages()
Параметры
Нет.
Возвращаемое значение
undefined.
Примеры
if ("serviceWorker" in navigator) {
navigator.serviceWorker.register("/sw.js").then(() => {
console.log("Service Worker Registered");
});
}
// …
navigator.serviceWorker.addEventListener("message", (e) => {
// …
});
navigator.serviceWorker.startMessages();
Спецификации
Совместимость с браузерами
| Рабочие столы | Мобильные устройства | ||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|
| Chrome | Edge | Firefox | Opera | Safari | Chrome Android | Firefox для Android | Opera Android | Safari на iOS | Samsung Internet | WebView Android | |
startMessages |
74 | 79 | 64 | 62 | 11.1 | 74 | 64 | 50 | 11.3 | 11.0 | 74 |
© 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/ServiceWorkerContainer/startMessages