ServiceWorkerGlobalScope: событие push
Базовая версия 2023
Новая возможность
С марта 2023 года эта функция работает на последних устройствах и версиях браузеров. Возможно, эта функция не будет работать на старых устройствах или браузерах.
Защищённый контекст: Эта функция доступна только в защищённых контекстах (HTTPS) в некоторых или во всех поддерживающих браузерах.
Примечание: Эта функция доступна только в Сервис-воркерах.
Событие push отправляется в глобальный контекст сервисного работника (представленный интерфейсом ServiceWorkerGlobalScope) при получении сервисным работником сообщения push.
Это событие не может быть отменено и не распространяется.
Синтаксис
Используйте имя события в методах, таких как addEventListener(), или задайте свойство обработчика события.
addEventListener("push", (event) => {});
onpush = (event) => {};
Тип события
Свойства события
Наследует свойства от родителя, ExtendableEvent. Дополнительные свойства:
-
PushEvent.dataТолько для чтения -
Возвращает ссылку на объект
PushMessageData, содержащий данные, отправленные вPushSubscription.
Пример
В этом примере настраивается обработчик событий push, который принимает данные в формате JSON, анализирует их и отправляет сообщение на обработку в зависимости от информации, содержащейся в сообщении.
self.addEventListener(
"push",
(event) => {
let message = event.data.json();
switch (message.type) {
case "init":
doInit();
break;
case "shutdown":
doShutdown();
break;
}
},
false,
);
Спецификации
| Спецификация |
|---|
| Push API # extensions-to-the-serviceworkerglobalscope-interface |
| Push API # dom-serviceworkerglobalscope-onpush |
Совместимость с браузерами
| Рабочие столы | Мобильные устройства | ||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|
| Chrome | Edge | Firefox | Opera | Safari | Chrome Android | Firefox для Android | Opera Android | Safari на iOS | Samsung Internet | WebView Android | |
push_event |
40 | 17 | 44 | 24 | 16Уведомления поддерживаются на macOS Ventura и новее. |
40 | 48 | 24 | 16.4Уведомления поддерживаются в веб-приложениях, сохранённых на главном экране. |
4.0 | 40 |
См. также
© 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/ServiceWorkerGlobalScope/push_event