【发布时间】:2016-07-30 14:49:39
【问题描述】:
我有一个服务工作者,它能够从我们的服务器接收推送事件,到目前为止一切正常。当前版本的 Chrome 不支持接收到的通知中的数据负载。因此,我需要在推送事件发生后从服务器获取有关通知的信息(标题、文本、..)。
为了确保用户不会收到两次相同的通知,我将他尚未收到的“待处理”通知的 ID 保存在一个数组中。每次 Service Worker ping 服务器时,都会从数组中获取并删除数组中的最后一项。
问题是,如果在发送过程中或服务工作者在获取通知时抛出任何异常,服务工作者会落后一个通知,这意味着例如如果只有一个新的待处理通知,则该数组始终包含 2 个项目。
我应该如何处理?
【问题讨论】:
标签: javascript web-push