PushSubscription: toJSON() 方法

Baseline 已广泛支持

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

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

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

PushSubscription 接口的 toJSON() 方法是一个标准序列化程序:它返回订阅属性的 JSON 表示,提供了一个有用的快捷方式。

语法

js
toJSON()

参数

无。

返回值

一个 JSON 对象。它包含订阅端点、expirationTime 和公钥,分别作为 endpoint 成员、expirationTime 成员和 keys 成员。

示例

js
navigator.serviceWorker.ready.then((reg) => {
  reg.pushManager.getSubscription().then((subscription) => {
    const mySubscription = subscription.toJSON();
    // do something with subscription details
  });
});

规范

规范
推送 API
# dom-pushsubscription-tojson

浏览器兼容性