Я использую ASP.NET Core 2.2 и внедрил приложение чата.Я реализовал переподключение следующим образом:
this._hub.onclose(() => {
if (this.debug) console.debug('hub connection closed');
hub connection was closed for some reason
let interval = setInterval(() => {
// try to reconnect hub every 5 seconds
this.start().then(() => {
// reconnect succeeded
this.join(true);
clearInterval(interval);
if (this.debug) console.debug('hub reconnected');
});
}, 5000);
});
Это прекрасно работает.Но затем, если я разверну новую версию своего приложения и соединение потеряно, я внезапно получаю 100 запросов POST к конечной точке /negotiate
для одного клиента.А также 404 на концентратор с параметром id.Если я проверю это локально, все будет хорошо.И я не могу воспроизвести это.
Есть идеи, откуда это происходит?
Редактировать
Я считаю, что моя реализация повторного подключения не оченьхорошо.Потому что после повторного подключения в Chrome открыты 4 или более веб-сокетов.Так что я думаю, мне нужно это изменить.Любое предложение о том, как правильно это реализовать?