NodeJs和Socket IO如何连接两个用户

时间:2018-01-18 10:00:42

标签: android ios node.js socket.io

我是NodeJs&的新手。 socketIO。我是后端开发人员,我正在开发android聊天应用程序后端代码,我使用NodeJs和SocketIO作为后端服务器。

我的应用就像约会应用。用户将搜索性别,需要选择在线的性别用户并连接两个用户。

任何人都可以给我更好的方法来发展这种逻辑。

1 个答案:

答案 0 :(得分:0)

您可以在同一代码库中编写Apis和聊天服务器代码,因此nodejs将是您的理想选择。

根据给定的信息,我希望你有一个用户表。 因此,只要一个用户与另一个用户交互,就将其视为对话。所以你可以使用房间/ chatid进行对话。它将是独一无二的2/2人。 即使您可以使用socketio房间概念创建聊天组。因此,将会话ID / roomids保存在单独的表中。

所以表结构应该是这样的:

  • 用户表(有关所有用户的信息)
  • 会话表(关于会话/房间ID的信息)
  • 聊天表(所有聊天)

SocketIO实施

每个客户端(android / ios app)都会与服务器建立连接,因此会有一个独特的socketid b / w客户端和套接字服务器   - 将所有socketids保存到db。   - 因此,每当用户想要与另一个用户建立连接时,服务器就可以轻松找到该用户的socketid,并且可以通过这些连接发送聊天。

一切都是最好的!!!

<强>参考

  1. https://socket.io/docs/rooms-and-namespaces/
  2. https://socket.io/demos/chat/
  3. https://michaelheap.com/sending-messages-to-certain-clients-with-socket-io/