窗口关闭时SignalR OnDisconnected方法Identity.Name为空

时间:2014-02-06 11:23:26

标签: signalr claims

我是SignalR的新手,我理解为什么当我关闭窗口时,会调用OnDisconnected,并且Identity.Name为空?

以及索赔等......

override Task OnDisconnected()
{

 Context.User.Identity.Name

  var identity = (ClaimsPrincipal)Thread.CurrentPrincipal;
        string id = identity.Claims.Where(c => c.Type == UserInfoIdClaimType)
                                   .Select(c => c.Value).Single();

}

Altho here:http://www.asp.net/signalr/overview/signalr-20/hubs-api/mapping-users-to-connections他们使用此代码将用户映射到id,我的意思是如果你有这个问题,用户关闭一个窗口,那么你将始终在_connections中遇到这个连接:(

任何想法,为什么会这样?

1 个答案:

答案 0 :(得分:1)

您可能遇到此错误:https://github.com/SignalR/SignalR/issues/2753

它似乎特定于WebSocket传输,应该在SignalR 2.0.3发布后修复。