我看到一个问题,在 3 个不成功的请求后,我的请求从 workbox.backgroundSync.Queue 队列中弹出。当 lastChance 标志设置为 true 时,在 3 个不成功的同步请求后,我也无法找到有关预期行为的可靠文档。
接下来应该发生什么?请求是否应该保留在队列中,可以做些什么来最终触发重播?
我看到一个问题,在 3 个不成功的请求后,我的请求从 workbox.backgroundSync.Queue 队列中弹出。当 lastChance 标志设置为 true 时,在 3 个不成功的同步请求后,我也无法找到有关预期行为的可靠文档。
接下来应该发生什么?请求是否应该保留在队列中,可以做些什么来最终触发重播?
请求将保留在队列中,直到达到 maxRetentionTime。 见 maxRetentionTime
如果标志 lastChance 设置为 true,则自动重试将停止,但您可以通过向 service worker 发送消息来触发replayRequests ,例如:
self.addEventListener('message', (event) => {
if (event.data.type === 'replayQueue') {
myQueue.replayRequests();
}
});