根据我的观察,Notification.permission
和navigator.permissions.query({name:'push', userVisibleOnly:true})
两者均可用于获取发送推送通知的权限状态(Notification.permission是显示通知的权限,而前者是发送推送的权限,但在实际使用情况下,根据我的理解,它们可以互换),“已授予”和“拒绝”是很常见的,但是如果用户都没有阻止未授予的权限,则前者会在chrome中提供“默认”权限,而Permissions.query显示为“提示”。
我想知道哪种情况更适合在哪种情况下检查权限,以及在用户授予或阻止权限的情况下,何时可以给出不同的结果。它是取决于浏览器版本还是浏览器版本,或者我们是在Service Worker范围中执行代码还是在我们使用哪个全局正常范围中执行代码?我还读到它们在Firefox浏览器上的行为有所不同,但我不清楚。