Задать вопрос

Как вернуть соединения socket.io после вывода disconnect при обновления страницы?

Создаю соединение socket которое после обновления страницы разрывается. если на стороне сервера перезапустить то соединения восстанавливаются. Как можно обработать disconnect чтобы вернуть соединения.

подключение на клиента
socketio(window.location.hostname+':8000', {
    transports: ['polling', 'websocket'],
    reconnection: true,
    autoConnect: true,
    timeout: 50000
})


На сервере
let app = express();
/*...*/
server = app.listen(8000);
Socket.runConnection(server);
/*...*/


Сам сокет
export class Socket {
/*....*/
public runConnection(app){
        this.io = socketIo(app,{
            reconnection: true,
            reconnectionDelay: 1000,
            reconnectionDelayMax: 5000,
            'sync disconnect on unload': true
        });
        this.io.adapter(sio_redis(RedisConfig));
        this.listen();
    }
public listen(){
        let self = this;
/*....*/
        this.io.on('connection', function(socket:SocketIO.Socket) {
            console.log(`connection ${socket.id}`);
            socket.on('disconnect', function (reason) {
/*....*/
            });
        });
    }
}


На стороне клиента socket.connect(); не помогает.
  • Вопрос задан
  • 767 просмотров
Подписаться 6 Простой Комментировать
Помогут разобраться в теме Все курсы
  • Нетология
    Node.js для backend-разработки
    6 месяцев
    Далее
  • Skillbox
    Node.js
    2 месяца
    Далее
  • Яндекс Практикум
    Бэкенд на Node.js для фронтенд-разработчиков
    3 месяца
    Далее
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы