PushManager: permissionState() 方法

基线 2023

新出现

2023 年 3 月起,此功能在最新的设备和浏览器版本中有效。此功能可能在较旧的设备或浏览器中无效。

安全上下文:此功能仅在 安全上下文 (HTTPS) 中可用,某些或所有 支持的浏览器 都可以。

注意:此功能在 Web 工作线程 中可用。

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

注意:从 Firefox 44 开始,通知推送 的权限已合并。如果通知获得授权,推送也将启用。

语法

js
permissionState()
permissionState(options)

参数

options 可选

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

userVisibleOnly

布尔值,指示返回的推送订阅将仅用于对用户可见其效果的消息。

applicationServerKey

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

返回值

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

规范

规范
推送 API
# dom-pushmanager-permissionstate

浏览器兼容性

BCD 表格仅在启用 JavaScript 的浏览器中加载。