ServiceWorkerRegistration: getNotifications() 方法

Baseline 已广泛支持

此功能已成熟,并可在许多设备和浏览器版本上运行。自 2023 年 3 月以来,它已在各种浏览器中可用。

安全上下文: 此功能仅在安全上下文(HTTPS)中可用,且支持此功能的浏览器数量有限。

注意:此功能在 Web Workers 中可用。

getNotifications() 方法是 ServiceWorkerRegistration 接口的一部分,它返回当前源通过当前 Service Worker 注册创建的通知列表,顺序与创建时相同。不同的源可以拥有多个活跃但作用域不同的 Service Worker 注册。由同一源上的一个 Service Worker 创建的通知,对该同一源上的其他活跃 Service Worker 将不可用。

语法

js
getNotifications()
getNotifications(options)

参数

options 可选

一个包含用于过滤返回通知的选项的对象。可用选项为:

tag 可选

一个表示通知标签的字符串。如果指定,则只返回具有此标签的通知。

返回值

一个 Promise,它解析为一个 Notification 对象列表。

示例

js
navigator.serviceWorker.register("sw.js");

const options = { tag: "user_alerts" };

navigator.serviceWorker.ready.then((registration) => {
  registration.getNotifications(options).then((notifications) => {
    // do something with your notifications
  });
});

规范

规范
Notifications API
# dom-serviceworkerregistration-getnotifications

浏览器兼容性