我正在使用带有Firebase Cloud Messaging的Web推送编写vue.js应用程序,我想知道是否可以向用户发送Web推送,并且如果用户处于脱机状态,则可以以某种方式存储它以便以后显示时显示用户再次打开该应用。是否有解决该问题的原则方法,即在最终用户离线时管理Web推送?
我要问的原因是,到目前为止,我提交给FCM服务器的所有带有脱机客户端令牌(即桌面浏览器)的Web推送通知都被遗忘了。可以肯定的是,当客户重新联机时,FCM不会尝试再次推送通知。
出于这个原因,我正在考虑编写一个自制的调度程序来管理脱机客户端的Web推送,但是我需要确保自己的努力是值得的。
已更新:我现在可以显示使用适当的time_to_live
值重新联机后发送到脱机客户端的通知。但是,仅显示最新的通知。为什么有什么具体原因?
答案 0 :(得分:0)
FCM的默认行为就是这样。来自docs:
如果设备未连接到FCM,则消息将一直存储到建立连接为止(再次遵守折叠键规则)。建立连接后,FCM会将所有待处理的消息传递到设备。