PushManager: permissionState() 方法

Baseline 已广泛支持

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

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

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

PushManager 接口的 permissionState() 方法返回一个 Promise,该 Promise 解析为一个字符串,指示推送管理器的权限状态。可能的值为 'prompt''denied''granted'

注意: 从 Firefox 44 开始,NotificationsPush 的权限已合并。如果允许通知权限,则推送也将启用。

语法

js
permissionState()
permissionState(options)

参数

options 可选

一个包含可选配置参数的对象。它可以具有以下属性

userVisibleOnly

一个布尔值,指示返回的推送订阅仅用于对用户可见的消息。

applicationServerKey

您的推送服务器将用于通过推送服务器将消息发送到客户端应用程序的公钥。此值是您的应用程序服务器生成的签名密钥对的一部分,可与 P-256 曲线上的椭圆曲线数字签名算法 (ECDSA) 一起使用。

返回值

一个 Promise,它解析为字符串 'prompt''denied''granted'

规范

规范
推送 API
# dom-pushmanager-permissionstate

浏览器兼容性