我们可以轮询服务工作者的通知吗?

时间:2017-08-15 13:40:16

标签: push-notification service-worker

使用服务工作者实现推送通知时,我们可以直接将通知推送到端点。但在我的网站上,通知是从外部API获取的。那么我的服务工作者是否可以通过任何方式轮询通知,以便我可以确定是否存在新通知?

1 个答案:

答案 0 :(得分:1)

如果您的网络应用程序已打开,您可以通过检查某些条件(轮询API等)然后使用Notifications API来显示通知。

这不需要服务人员。使用服务工作人员+ push事件来触发通知意味着即使您的网络应用程序已关闭,您的通知也会显示,并且依靠监听push事件与重复轮询更为有效API。

除了注册侦听push事件的服务工作者之外,理论上您可以在Web应用程序打开时使用轮询和显式调用Notifications API的组合。但是,如果您正在努力支持服务工作者用例,那么仅依靠服务工作者来处理所有通知可能会更加清晰。

这两种方法之间的一个区别是,当您的Web应用程序为supported in more browsers时(截至2017年8月),使用Notifications API而不是基于服务工作者的推送通知。