自动AD注销后SignalR断开连接

时间:2013-04-23 12:09:56

标签: authentication asp-classic signalr

我的项目实施SignalR时遇到以下问题。 我的用户通过ASP常规身份验证进行身份验证。 (基于AD基础)

当达到身份验证超时时,javascript与集线器之间的连接将失败。 我想知道处理它的好方法是什么。 (事件(哪一个?)+重新连接?)

非常感谢您提前

*的 数据: *

在Chrome调试中:

Failed to load resource: the server responded with a status of 500 (Internal Server Error) http://mySite:81/Project/signalr/send?transport=serverSentEvents&con...

IIS日志:

当身份验证仍处于活动状态时

2013-04-23 10:27:07 IP POST /Project/signalr/send transport=serverSentEvents&connectionToken=RRBKQRnC_KsWBfxuGTXbfsvipbDWWFRVSodpXmW2-CS-GniKtxx69WbAJXURCLns_CfNJDmSZUI3v9LLslqWYy5pvzA1lzCcl9nWx1ufAOB69l8CFTPySNZWzJrVs-VKIb34vjHq5qi8qfms-LFg6j_zwO9WA4vguRu1LdPxY2I2p09v6X_PE7tfCXnIS4vS0 81 thomas.dupuis MYIP Mozilla/5.0+(Windows+NT+6.1;+WOW64)+AppleWebKit/537.22+(KHTML,+like+Gecko)+Chrome/25.0.1364.160+Safari/537.22 200 0 0 2252

当身份验证不再有效时:

2013-04-23 10:28:39 IP POST /Project/signalr/send transport=serverSentEvents&connectionToken=RRBKQRnC_KsWBfxuGTXbfsvipbDWWFRVSodpXmW2-CS-GniKtxx69WbAJXURCLns_CfNJDmSZUI3v9LLslqWYy5pvzA1lzCcl9nWx1ufAOB69l8CFTPySNZWzJrVs-VKIb34vjHq5qi8qfms-LFg6j_zwO9WA4vguRu1LdPxY2I2p09v6X_PE7tfCXnIS4vS0 81 - MYIP Mozilla/5.0+(Windows+NT+6.1;+WOW64)+AppleWebKit/537.22+(KHTML,+like+Gecko)+Chrome/25.0.1364.160+Safari/537.22 500 0 0 209

我们可以看到第一个日志包含我的用户ID(thomas.dupuis),而不是第二个。 (第一个获得200个http,而第二个获得500个内部服务器错误)

1 个答案:

答案 0 :(得分:1)

如果您要进行身份验证超时,则需要让客户端重新启动,即调用$ .connection.hub.stop()然后调用$ .connection.hub.start()。在SignalR连接处于活动状态时,无法修改身份验证凭据。