Socket.on срабатывает, когда сообщения сокета отправляются другими сторонами, а не когда вы отправляете их от той же стороны.
Сервер:
const io = require('socket.io')(80);
io.on('connection', function(socket){
socket.emit('request', /* */); // emit an event to the socket
io.emit('broadcast', /* */); // emit an event to all connected sockets
socket.on('reply', function(){ /* */ }); // listen to the event
});
Клиент:
const socket = io('http://localhost/');
socket.on('connect', function () {
socket.on('request', function (msg) {
socket.emit('reply', 'hi');
});
socket.on('broadcast', function (msg) {
console.log(msg);
});
});