Как перехватить ошибку/исключение в javascript?
Использую библиотеку socket.io-redis
Пример:
import { Server } from 'socket.io';
import redisAdapter from 'socket.io-redis';
const io = new Server(3000);
io.adapter(redisAdapter({ host: 'localhost', port: 6379 }));
И вот тут проблема:
Если что-то будет с redis - приложение падает. Если неверный пароль - приложение падает.
Смотрел через Object.prototype.toString.call: io - объект, экземпляр класса. redisAdapter - метод, io.adapter - метод. Обычные методы, не асинхронные.
Пробовал завернуть весь код в try, catch - не помогло. Пробовал в объект, что передаем в redisAdapter, передать retry_strategy. С redis работает, тут - нет.
Есть идея подписаться как: .on("event", callback). Но нет идей, на что его поставить.
Ответы (1 шт):
Автор решения: MrYogurt
→ Ссылка
io.of('/').adapter.on('error', function(){});
Подробнее в документации.