在客户端:
socket.on("event_test", function(msg){ console.log(msg);
alert(msg);
});
function test()
{
socket.emit("hello","my_username");
}
在服务器中:
socket.on("hello", function(new_username){
socket.to(socket.id).emit("event_test", "pobe" );
console.log(socket.id); // socket id is being printed correctly
});
我写这段代码只是为了检查.to()功能。 正常的socket.emit工作正常。只有当我尝试将其发送给特定客户端时,它才会发出,我无法在客户端接收它。 我究竟做错了什么 ? 紧随其后:https://socket.io/docs/emit-cheatsheet/
答案 0 :(得分:1)
socket.on("hello", function(id, new_username){
socket.broadcast.to(id).emit("event_test", "pobe" );
});
查看你的备忘单你看起来是正确的,我不是专家,但我想你可能已经把你的消息从服务器发送给自己了。
编辑:
如果那不起作用,请尝试:
socket.on("hello", function(new_username){
socket.emit("event_test", "pobe" );
});