【问题标题】:Why I an getting undefined user disconnected socket.io为什么我的未定义用户断开了 socket.io
【发布时间】:2017-01-30 00:14:49
【问题描述】:

我正在使用socket.io构建聊天系统,我正在使用这个

io.on('connection', function( socket ){
     socket.on('adduser', function( uname ){
        socket.username = uname;
    });

    socket.on('disconnect', function( ) {
        console.log( socket.username + " disconnected");
    });
});

但它显示未定义已断开连接

这段代码哪里出错了??

【问题讨论】:

    标签: socket.io chat


    【解决方案1】:

    如果您在该特定套接字上收到adduser 消息之前收到disconnect 消息,则不会设置socket.username 属性,您将在控制台中看到undefined disconnected

    因此,显然客户端在断开连接之前没有发送 adduser 消息。如果我们能看到客户端代码,我们可以提供进一步的帮助。或者,您可以将断开连接日志更改为以下内容:

    io.on('connection', function( socket ){
         socket.on('adduser', function( uname ){
            socket.username = uname;
        });
    
        socket.on('disconnect', function( ) {
            if (socket.username) {
                console.log( socket.username + " disconnected");
            } else {
                console.log('socket disconnected before username set');
            }
        });
    });
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2016-12-18
      • 2017-05-08
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多