signalr连接ID格式不正确

时间:2013-03-11 21:30:44

标签: asp.net-mvc-4 signalr

我有一个来自mvc4 c#razor引擎的项目构建。 我添加了最新的signalr nuget包1.0.1 我的项目使用表单身份验证 每次客户端从登录到注销,反之亦然,我在客户端上收到错误:

> "NetworkError: 500 Internal Server Error -
> http://myhost:51090/signalr/abort?transport=serverSentEvents&connectionToken=uIJvYLP3T0GdHaowIlS4uPDA19ukUy7TaW8dcXoPfma4Mr52uoe7PLK9Hh3ip17X_3RbFXx92yEa7nxYVHaCiRAWVE5e05vvpLD0_blb94eUwdkXbmhkRPM2_Z590A64VBF2-eLB_8wCWq-dmkkkbe6EqP6c9YXN3WRF5IyNYkB6Wkom7O1ZoDavQQ0UWvok0"

并在服务器端:

 The connection id is in the incorrect format.

我是否需要考虑以不同的方式使用signalr(来自https://github.com/SignalR/SignalR/wiki/QuickStart-Hubs)然后使用身份验证?

1 个答案:

答案 0 :(得分:1)

当您有一个有效的SignalR连接时,您似乎正在注销(修改您的用户)。

发生这种情况的原因是因为在服务器上的中止请求中,我们检查connectionId是否与正确的用户相关联。因此,在连接仍处于活动状态时注销会导致您丢失用户关联并导致错误。

要解决此问题,请在注销前停止SignalR连接。