如何使用 WebSocket 底层 API 实现用户间消息传递?

ID:17024 / 打印

如何使用 websocket 底层 api 实现用户间消息传递?

在底层 api 下使用 websocket 实现用户间消息传递

对于一个新手而言,理解 websocket 的底层 api 实现机制至关重要,而不是只依赖于框架提供的封装。在没有框架的情况下,websocket 的工作原理如下:

第一个用户向第二个用户发送消息

对于第一个用户,您已经将消息传递到后端。要将消息发送到第二个用户,您需要:

  1. 维护连接标识映射:服务端需要记录连接与用户 id 之间的映射关系,例如,{连接 id 1: 用户 a,连接 id 2: 用户 b}。
  2. 接收消息和用户 id:服务端收到第一个用户的 websocket 消息,消息中包含用户 a 和用户 b 的 id 以及要发送的消息文本。
  3. 查找连接:服务端使用用户 b 的 id 从映射关系中查找与用户 b 对应的 websocket 连接。
  4. 发送消息:服务端将消息写入找到的 websocket 连接,该消息将被发送到用户 b 的浏览器。

示例

假设用户 a 的连接 id 为 1,用户 b 的连接 id 为 2,消息文本为 "你好!"。第一个用户发送的 websocket 消息格式如下:

{   "id": 2,   "msg": "你好!" }

服务端收到消息后,将其写入连接 id 为 2 的 websocket 连接,从而将消息发送到用户 b 的浏览器。

上一篇: 批量插入出错时如何跳过错误数据继续插入?
下一篇: 代码多表查询报错怎么办?

作者:admin @ 24资源网   2024-11-27

本站所有软件、源码、文章均有网友提供,如有侵权联系308410122@qq.com

与本文相关文章

发表评论:

◎欢迎参与讨论,请在这里发表您的看法、交流您的观点。