Недавно я начал использовать библиотеку Signal R в приложении ASP.Net MVC 3. Я могу использовать Signal R для отправки сообщения клиенту. Но я заметил, что если я войду в приложение из другого браузера, я получаю следующую ошибку:signalr InvalidOperationException
Тип исключения: InvalidOperationException Сообщение об исключении: непризнанная идентификация пользователя. Идентификатор пользователя не может меняться во время активного соединения SignalR.
сервера трассировки стека: в Microsoft.AspNet.SignalR.PersistentConnection.GetConnectionId (контекст HostContext, строка connectionToken) в Microsoft.AspNet.SignalR.PersistentConnection.ProcessRequest (контекст HostContext) в Microsoft.AspNet.SignalR.Owin .CallHandler.Invoke (IDictionary 2 environment) at Microsoft.AspNet.SignalR.Owin.Handlers.HubDispatcherHandler.Invoke(IDictionary
2 окружающая среда) на Microsoft.Owin.Host.SystemWeb.OwinCallContext.Execute() в Microsoft.Owin.Host.SystemWeb.OwinHttpHandler.BeginProcessRequest (HttpContextBase HttpContext, AsyncCallback обратного вызова, объект ExtraData)
И в некоторых случаях я неоднократно получал эту ошибку. И журнал событий заполняется через пару минут. Я переопределяю OnConnect, функции OnDisconnect в моем классе хаба и инициировал соединение хаба из сценария Java.
Любые советы по наилучшему способу решить эту проблему, чтобы соединение было восстановлено в старом окне, но с новым идентификатором? – chrisb
После изменения личности пользователя вы должны вручную остановить и перезапустить соединение signalr. – halter73