nodejs socket 发出返回未定义

nodejs socket emit return undefined

本文关键字:返回 未定义 socket nodejs      更新时间:2023-09-26

每当发出新连接时,我都会尝试发送给客户端。

我的服务器端javascript是:

var clients = 0;
io.sockets.on('connection', function (socket) {
clients ++;
console.log(clients);
socket.broadcast.emit('connect',socket.clients);
}

和我的客户端js处理:

socket.on('connect', function (data) {
console.log('on'+data);});
输出未定义

(未定义)

哪里出了问题?

socket.broadcast.emit('connect',socket.clients);
                                ^^^^^^^^^^^^^^ this should be 'clients'

此外,connect是带有socket.io的预定义事件,因此您不应重用它,否则可能会产生意外结果。

FWIW:socket.broadcast.emit将向除当前连接之外的所有连接发送消息。如果这不是您想要的(您希望将消息发送到所有连接),请改用 io.sockets.emit)。