所以我终于为我的网站实施了成功的推送通知 但是,当我按下通知并假设接收器的电脑关闭或处于睡眠模式时 gcm返回成功,但通知丢失,它永远不会弹出该用户...而另一方面,我注意到facebook似乎做了一些事情,帮助它解决了这个问题..你看到一个Facebook铬通知尽快你重新开始后打开镀铬的第一件事...... 有没有人知道fb如何通过这个问题?
答案 0 :(得分:6)
如果您使用的是标准Web推送服务(例如在Firefox中),则需要定义名为“TTL”的标头。 从标准(https://tools.ietf.org/html/draft-ietf-webpush-protocol-02):
应用程序服务器可以使用TTL头字段来限制时间 推送服务保留推送消息。 TTL标题 field包含一个以秒为单位的值,用于描述推送的时间 邮件由推送服务保留。
如果未设置,则默认值为0.
GCM尚不支持Web推送标准,但它确实有一个time_to_live选项可以达到相同的结果:https://developers.google.com/cloud-messaging/concept-options#ttl
编辑:Mozilla推送服务现在需要TTL标题:https://blog.mozilla.org/services/2016/02/20/webpushs-new-requirement-ttl-header/。