Node.js socket.io发送到一个客户端不工作
我使用的是socket.io 1.7.3版本。服务器代码:Node.js socket.io发送到一个客户端不工作,node.js,socket.io,Node.js,Socket.io,我使用的是socket.io 1.7.3版本。服务器代码: io.on('connection', function (socket) { console.log(socket.id); // CdnNBVe9ktJmMcb1AAAA socket.to(socket.id).emit('something'); socket.emit('something'); // if I do it without to, it works but to all clients cons
io.on('connection', function (socket) {
console.log(socket.id); // CdnNBVe9ktJmMcb1AAAA
socket.to(socket.id).emit('something');
socket.emit('something'); // if I do it without to, it works but to all clients
console.log(socket.rooms); // { CdnNBVe9ktJmMcb1AAAA 'CdnNBVe9ktJmMcb1AAAA' }
});
客户:
<script src="/socket.io/socket.io.js"></script>
var socket = io.connect(..);
socket.on('connect', function() {
console.log(socket.id); // CdnNBVe9ktJmMcb1AAAA
socket.on('something', function() {
alert('it works');
});
});
var插座=io.connect(..);
socket.on('connect',function(){
console.log(socket.id);//CdnNBVe9ktJmMcb1AAAA
socket.on('something',function(){
警报(“它工作”);
});
});
为什么它不起作用?我没有收到任何警报,尽管所有的console.log似乎都是正确的 要向特定客户端发送消息,必须向服务器提供该客户端的socket.id,并且在服务器端,socket.io负责使用
socket.broadcast.to('ID').emit( 'send msg', {somedata : somedata_server} );
在代码中
socket.broadcast.to(socket.id).emit('something');
要向特定客户端发送消息,必须向服务器提供该客户端的socket.id,并且在服务器端,socket.io通过使用
socket.broadcast.to('ID').emit( 'send msg', {somedata : somedata_server} );
在代码中
socket.broadcast.to(socket.id).emit('something');
这两种方法都不适用于我,但无论如何,在文档中我可以看到:socket.to().emit('hey','I just meet you');这两种方法都不适用于我,但无论如何,在文档中我可以看到:socket.to().emit('hey','I just meet you');