POST://lan-chat-system
带点橘子味的馒头的头像
带点橘子味的馒头

FRONTEND / DESKTOP DEV

返回文章列表

LAN 聊天系统:GUI 与 Web 双端同步的一些思路

1 分钟· 248 431 次阅读

LAN 聊天系统同时有 GUI 客户端和 Web 界面,两端都要实时收到消息。这里记录几个在工程上踩过、也值得留下的点。

连接模型

服务端用 WebSocket 广播,GUI 端和 Web 端都是「订阅者」。关键不在于协议,而在于状态来源唯一

  • 消息以服务端落库为准,客户端只做展示;
  • 重连后拉取缺失区间,而不是依赖离线缓存兜底。

跨浏览器交互一致性

Web 端早期大量使用原生 confirm(),在 Safari 和 Chrome 上表现不一致。后来统一换成自定义模态框,体验才稳定下来。这件事看似小,却直接影响「发消息前要不要再确认」这种关键路径。

调试要点

在 GUI 的事件循环里跑 WebSocket 服务时,注意不要让阻塞调用卡住主线程;用独立协程或线程承接网络 IO,UI 才能始终保持响应。

相关文章