我正在构建一个应用程序,我希望在应用程序运行期间为每个连接提供唯一标识符,我想知道socket.id是否适用于此.例如,如果用户1断开与应用程序的连接,则稍后连接的用户2不应具有用户1之前具有的相同socket.id,即使用户1不再连接.套接字ID是否在整个时间内都是唯一的socket.io正在监听服务器?
我的服务器正确地发出事件,但发出回调从不工作。在下面,我的控制台上没有记录任何内容:
服务器:
io.sockets.emit('delete hint', {id: id}, function(data){
console.log('callback');
});
Run Code Online (Sandbox Code Playgroud)
客户:
socket.on('delete hint', function(data){
// display a message before deleting
$('#' + data.id).fadeOut(function(){
$(this).remove();
});
});
Run Code Online (Sandbox Code Playgroud)
我还尝试将客户端代码作为函数(数据,fn),以防回调需要包含在接收函数中。
我正在使用 Windows,当 socket.io 发出事件时,我的命令提示符显示以下内容:
websocket writing 5:::{"name":"delete hint", "args":[{"id":"1"}, null]}
Run Code Online (Sandbox Code Playgroud)
我无法弄清楚问题是什么,我做错了什么?