Guy*_*guy 12 chat node.js socket.io
使用socket.io管理多个聊天室的正确方法是什么?
所以在服务器上会有类似的东西:
io.sockets.on('connection', function (socket) {
socket.on('message', function (data) {
socket.broadcast.emit('receive', data);
});
});
Run Code Online (Sandbox Code Playgroud)
现在这对一个房间工作正常,因为它向所有连接的人广播消息.您如何向特定聊天室中的人发送消息?
添加.of('/ chat/room_name')?或者在一个房间里存放一个人的阵列?
Sơn*_*yễn 19
Socket.IO v0.7现在为Socket您定义了每个命名空间一个:
var room1 = io.connect('/room1');
room1.on('message', function () {
// chat socket messages
});
room1.on('disconnect', function () {
// chat disconnect event
});
var room2 = io.connect('/room2');
room2.on('message', function () {
// chat socket messages
});
room2.on('disconnect', function () {
// chat disconnect event
});
Run Code Online (Sandbox Code Playgroud)
使用不同的套接字,您可以有选择地发送到您想要的特定命名空间.
Socket.IO v0.7也有"房间"的概念
io.sockets.on('connection', function (socket) {
socket.join('a room');
socket.broadcast.to('a room').send('im here');
io.sockets.in('some other room').emit('hi');
});
Run Code Online (Sandbox Code Playgroud)
资料来源:http://socket.io/#announcement
| 归档时间: |
|
| 查看次数: |
16841 次 |
| 最近记录: |