我只是想知道如何使用Node.Js一次监听多个端口。目前,假设我有一个简单的聊天应用程序,它侦听port no 8080并将消息发送给通过该端口连接的每个人。但我想让它更像简单的实时聊天应用程序。如果有10个人,如果他们想要向任何一个人发送消息,那么该消息应该只发送给那个特定的人,而不是其他人。下面是我开始编写的简单代码:
var app = require('express')();
var http = require('http').Server(app);
var io = require('socket.io')(http);
app.get('/', function(req, res){
res.sendfile('index.html');
});
http.listen(3000, function(){
console.log('listening on *:3000');
});
io.on('connection', function(socket){
console.log('a user connected');
socket.on('disconnect', function(){
console.log('user disconnected');
});
});
io.on('connection', function(socket){
socket.on('chat message', function(msg){
io.emit('chat message', msg);
});
});任何帮助都将不胜感激。
发布于 2014-09-05 12:55:57
虽然在技术上可行,但我不会使用多个端口,而是使用Socket.io Rooms。然后,您可以只向这些房间中的人员发送消息。
io.on('connection', function (socket) {
socket.join('some room'); //join room
io.to('some room').emit('some event'); //send messages to members of room
});https://stackoverflow.com/questions/25678782
复制相似问题