Ваш код работает, и не имеет значения, куда вы положили server.start()
.
Проблема в вашем клиентском коде.Событие socket.on('connection')
не существует для клиента socket.io.Событие называется connect
.
IO - Событие: документация 'connect'
Следующий фрагмент кода должен работать.
const socket = io('http://localhost:8081');
socket.on('connect', data => {
console.log('connected');
});
socket.on('msg', data => {
console.log(data);
});
setTimeout(() => {
socket.emit('another event', 'another events data')
}, 2000)
сервер:
const init = async () => {
const io = SocketIO.listen(server.listener)
io.sockets.on('connection', (socket) => {
socket.emit('msg', 'welcome')
socket.on('another event', (data) => {
console.log(data);
})
})
await server.start()
console.log(`Server running at: ${server.info.uri}`)
}