我目前正在 Firefox 桌面浏览器上发送网络通知。不幸的是,删除的令牌仍然可以通过 Mozilla Push Server 推送。
要删除由ServiceWorker生成的令牌(即订阅端点),我只需清除缓存历史记录。然后,我向已删除的端点发送一个通知:Mozilla 返回一个201 Created
,告诉我们通知已为用户创建并准备好发送。
但是,如果我使用 Chrome 浏览器重复相同的步骤,Google Cloud Messaging 会告诉我们令牌未注册(参见GCM 文档>“未注册的设备”)。
但是,我可以在Mozilla 文档中清楚地看到这种情况有错误代码:cferrno 103 - Expired URL endpoint
或errno106 - Invalid subscription
.
另外,我必须说,如果我阻止以前授予的本机通知权限,Mozilla 会返回一个errno106 - Invalid Subscription
错误。问题是令牌何时被删除。