使用Django创建同步(实时和脱机)的最佳实践或模式是什么?

问题描述 投票:0回答:1

我想最好使用WebSockets(通道)。但是问题是如何保证每个设备都具有最新的数据集。例如,当一台设备离线时,然后再次在线,Django渠道会再次向他发送消息吗?对文章或示例有什么建议吗?预先感谢。

django websocket django-channels
1个回答
0
投票

Websockets不会这样做,因为在每个连接之后,后端/服务器将无法检测到该连接是否与用户的连接相同(该连接较早断开连接并重新发送较早失败的事件)。实际上,一般而言,Websocket连接无法检测前端是否接收到已发送的事件或事件失败。

您需要做的是在前端编写一个同步逻辑,这样当它重新连接到服务器更新时,需要通过API或websocket(无论您喜欢什么)进行更新。但关键是必须在其末端编写同步逻辑。通常,我们要做的是存储最后的同步时间,并根据在多个API中提供的最后同步时间来更新前端的数据。

© www.soinside.com 2019 - 2024. All rights reserved.