微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

Web - 定期同步和同步有什么区别? 后台同步定期后台同步

如何解决Web - 定期同步和同步有什么区别? 后台同步定期后台同步

我在 PWAsync定期同步后台遇到了两种不同类型的同步。可供他们使用的资源并不多,现有资源也无法通过示例工作代码进行充分说明。

所以我的主要问题是:除了频率之外,它们之间还有其他逻辑差异吗?

我的附带问题是:他们是否自己处理请求?我问这个是因为我想要更灵活的东西,我的意思是我正在管理离线和在线情况并将数据保存在 IDB 中我处于离线状态,我只需要一个后台进程来使我的离线状态来自我的自定义 IDB 的数据并将它们发送到服务器。

解决方法

以下是一些可以帮助说明差异的用例。另请注意,自 2021 年 2 月起,Background Sync 仅在 Chrome 和基于 Chromium 的浏览器中可用,而 Periodic Background Sync 仅在渐进式网络应用程序{{3} }.

后台同步

用例是在“后台”定期重试失败的更新/上传操作(通常是 POSTPUT),直到成功。例如,您可以想象,尝试将新照片上传到社交媒体网站,但您的网络连接已断开。作为用户,您希望在将来的某个时间点重试上传。

API 仅提供通过网络应用服务工作线程中的 sync 事件触发重新尝试网络操作的机会的机制。由开发人员负责存储有关失败请求的信息(通常在 IndexedDB 中)并实际重新发送它,并指示 sync 是成功还是再次失败。

(如果您不想自己处理所有事情,installed 可以帮助您了解实现细节。)

定期后台同步

用例是在“后台”刷新缓存,以便用户下次打开您的网络应用程序时,数据比其他情况下更新鲜。您可以想象一个已安装的新闻渐进式网络应用使用定期后台同步来更新其每天早上的头条新闻缓存。

在幕后,这是通过在您的服务工作线程中调用 periodicsync 事件来实现的,并且在该事件处理程序中,您通常会发出一个 GET 请求来更新存储在缓存存储 API 中的内容或 IndexedDB。

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。