如何将后端连接到服务器前端,以便使用与不同用户的 socket.io 进行实时聊天



我正在使用Mongoose来存储不同注册用户之间的聊天,在当前的实现中,如果他们刷新页面,他们可以检索聊天日志! 这与实时解决方案不同。如何使用 socket.io(( 充当许多用户的发送方/接收方。

我跟着
https://socket.io/get-started/chat/和https://medium.freecodecamp.org/simple-chat-application-in-node-js-using-express-mongoose-and-socket-io-ee62d94f5804

但两者都假定同一用户具有相同的端口。

参考官方 API 文档总是一个更好的主意。

https://socket.io/docs/client-api/

在您的情况下,您需要为单独的私人聊天创建一个单独的套接字

//Join PrivateRoom - client
var socket = io.connect('http://localhost');
socket.emit('joinprivate', {email: user1@example.com});
//Server
var io = require('socket.io').listen(80);
io.sockets.on('connection', function (socket) {
  socket.on('joinprivate', function (data) {
    socket.join(data.email); // We are using room of socket io
  });
});

更多示例:

如何使用 socket.io 向特定客户端发送消息

最新更新