我使用服务工作者实现了推送通知。我将端点存储在我的数据库中。当前订阅更改/过期时,如何从db中删除旧订阅条目。 " pushsubscriptionchange"我正在服务工作者听。但是,当我将通知订阅更改为"始终阻止此网站时,并未触发#34;在chrome设置中。有什么帮助吗?
答案 0 :(得分:1)
我不相信通过网站设置撤消通知权限会触发服务工作者的pushsubscriptionchange
事件。
相反,我认为您可以做的是检测客户页面中registration.pushManager.subscribe()
方法的拒绝。根据{{1}}的{{1}}的第9步,
如果未授予,则拒绝使用名称为DOMException的promise " NotAllowedError"并终止这些步骤。
因此,我认为您最终能够在您描述的场景中检测到这些内容。
至于在那种情况下要清理哪些订阅端点,我说你应该清理所有这些端点?用户已选择退出通知,因此我不相信任何现有的终端都可以继续使用。