为什么不发挥sockets内工作

我正试图发送一个事件套接字内套接字为例

io.on('connection', function (socket) { socket.emit("connected", {msg: 1}); socket.on('funcb', function (data) { console.log('funca sent following data'); console.log(data); }); socket.on('funca', function (data) { console.log(data); socket.emit('funcb', data); }); }); 

funca从客户端/浏览器调用,它尝试调用funcb但func b不工作任何想法?

为了解释@bolav用代码说的话:

客户端:

  socket.emit("connected", {msg: 1}); socket.on('funcb', function (data) { console.log('funcb from server sent following data'); console.log(data); }); socket.on('funca', function (data) { console.log(data); socket.emit('funcb', data); }); 

服务器端:

 socket.on('funcb', function (data) { console.log('funca from client side sent following data'); console.log(data); socket.emit("funcb", data); }); 

可能是“发射”只是发送事件回到客户端(浏览器)而不是套接字本身,所以无法捕捉事件'funcb'

客户端发送的socket.emit('funcb', data)不会调用客户端上的socket.on('funcb')监听器。 它会发送到另一端,并调用服务器上的socket.on侦听器。