жизненный цикл в java-клиенте asp net core SignalR

#asp.net-core #signalr #java-client

#asp.net-core #signalr #java-клиент

Вопрос:

как определить, когда Java-клиент успешно подключился к SignalR. где находится жизненный цикл OnConnect.

я хочу что-то сделать, когда HubConnection подключено к серверу.

У HubConnection есть метод OnClose для подписки на метод обратного вызова, который запускается при закрытии или разъединении соединения.

Ответ №1:

Ответ БреннанКонроя:

Когда start возвращается, вы знаете, что соединение было успешным.

Например, вы могли бы сделать:

Подключение к хабу.запуск().Завершение(() -> logger.info («Клиент успешно подключен».));

https://github.com/aspnet/AspNetCore.Docs/issues/12122#issuecomment-485851457

Ответ №2:

Я попробовал doOnComplete(), и это решение у меня не работает. IDE показывает «Результат doOnComplete не используется». Я нашел лучшее решение:

 connection.start().subscribe(new CompletableObserver() {
        @Override
        public void onSubscribe(@NonNull Disposable d) {}

        @Override
        public void onError(@NonNull Throwable e) {
            // TODO OnError
        }

        @Override
        public void onComplete() {
            Log.d("SocketSrv","Connected");
        }

    });