sách gpt4 ai đã đi

service-worker - Service Worker 中未触发定期同步

In lại 作者:行者123 更新时间:2023-12-05 06:08:38 29 4
mua khóa gpt4 Nike

我正在尝试为我的网站使用后台定期同步。我正在使用 localhost 并在 1*1000 毫秒时注册 periodicsync 事件,但这根本不会触发。

我看过这个thử nghiệm ,但即使我将该网站安装为应用程序,它也根本不会启动。

使用 chrome 87.0.4280.66。

但是,如果我从应用程序开发人员窗口手动触发定期同步事件,它会起作用。

1 Câu trả lời

只有在“大多数”基于 webkit 的浏览器中将应用程序安装为 PWA 时,periodicsync 事件才会正确注册

https://developer.mozilla.org/en-US/docs/Web/API/Web_Periodic_Background_Synchronization_API

关于何时实际触发的条件尚不清楚,并且取决于一些不确定的因素,例如用户对网站的参与度。

这就是为什么在注册周期同步时可以设置的参数是minInterval

此 block 将帮助您成功注册它,不幸的是,我不清楚周期性同步将触发的“现实世界”场景:

const status = await navigator.permissions.query({
// @ts-ignore
name: 'periodic-background-sync',
});

if (status.state === 'granted') {
navigator.serviceWorker.ready.then(async (sw: any) => {
await sw.periodicSync.register('periodicsync', {
minInterval: 1000,
});
})
.catch(error => {
console.error('[BackgroundSync] Error: ' + JSON.stringify(error, null, 2));
});
}
else {
console.error('[BackgroundSync] Does not have permission');
}
}

关于service-worker - Service Worker 中未触发定期同步,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/65096834/

29 4 0
行者123
Hồ sơ cá nhân

Tôi là một lập trình viên xuất sắc, rất giỏi!

Nhận phiếu giảm giá Didi Taxi miễn phí
Mã giảm giá Didi Taxi
Giấy chứng nhận ICP Bắc Kinh số 000000
Hợp tác quảng cáo: 1813099741@qq.com 6ren.com