#node.js #socket.io
#node.js #socket.io
Вопрос:
Я не уверен, что это проблема или, может быть, есть изменения между версиями 2.x и 3.x. Когда требуется сокет.пакет ввода-вывода в первой версии я могу использовать функцию прослушивания и передавать http-серверу в качестве параметра, но при использовании версии 3.x эта функция не существует и выдает эту ошибку типа.
Это проблема или что-то изменилось?
Это снипет с сокетом 2.x.версия ввода-вывода работает, но использование последней версии — нет
const socketIO = require('socket.io')
let socket;
const connectionSocket = (server) => {
const io = socketIO.listen(server);
io.on('connection', (newSocket) => {
socket = newSocket;
console.log(newSocket.id);
});
}
const getSocket = () => socket;
module.exports = {
connectionSocket,
getSocket
}
Ответ №1:
Вы можете написать что-то вроде этого:
const server = http.createServer(app);
const setServer = server => {
io = socketIo(server, { transports: ['websocket', 'polling'] });
io.on('connection', socket => {
socket.on('user-connection', userConnected(socket));
});
};