【发布时间】:2014-02-18 13:45:54
【问题描述】:
我有一个 SignalR 项目,它在我的开发环境中运行没有问题,但是一旦它被转移到生产环境中,几乎每个调用都会因错误而失败
ConnectionId 的格式不正确。
我在 StackOverflow 上看到了一些关于相同错误消息的其他项目,但没有一个项目有解决方案。
我正在使用 SignalR 2.0.2 和 SignalR Scaleout with SQL Server,这实际上是 SignalR 的负载平衡器,它使用 SQL Server 进行协调。
事件代码:3005 事件消息:发生未处理的异常。 活动时间:2/11/2014 9:11:27 PM 活动时间(UTC):2/12/2014 3:11:27 AM 事件 ID:cff1fd93fa6d4b83b1848078a905371c 事件序列:73 事件发生:10 事件详细代码:0 应用信息:
Application domain: /LM/W3SVC/2/ROOT-3-130366479327251392 Trust level: Full Application Virtual Path: / Application Path: C:\inetpub\wwwroot\<remvoved> Machine name: BSDUSHC1WW09 Process information: Process ID: 7088 Process name: w3wp.exe Account name: <remvoved> Exception information: Exception type: InvalidOperationException Exception message: The ConnectionId is in the incorrect format. atMicrosoft.AspNet.SignalR.PersistentConnection.GetConnectionId(HostContext 上下文,字符串连接令牌)在 Microsoft.AspNet.SignalR.PersistentConnection.ProcessRequest(HostContext 上下文)在 Microsoft.AspNet.SignalR.Hubs.HubDispatcher.ProcessRequest(HostContext 上下文)在 Microsoft.AspNet.SignalR.PersistentConnection.ProcessRequest(IDictionary`2 环境)在 Microsoft.Owin.Mapping.MapMiddleware.d__0.MoveNext() --- 从先前抛出异常的位置结束堆栈跟踪 --- 在 System.Runtime.ExceptionServices.ExceptionDispatchInfo.Throw() 在 Microsoft.Owin.Host.SystemWeb.IntegratedPipeline.IntegratedPipelineContext.EndFinalWork(IAsyncResult 一只老鼠 System.Web.HttpApplication.AsyncEventExecutionStep.System.Web.HttpApplication.IExecutionStep.Execute() 在 System.Web.HttpApplication.ExecuteStep(IExecutionStep 步骤, Boolean & completedSynchronously)
请求信息: 请求URL:http:/// signalr /连接运输= serverSentEvents&connectionToken = GZlhDBCjkD1 / bL1rc4Rlq2PVKYRs0B9nN7b71cU / E6x7sCsFvR1DqM / rBnDhg + URwkYyBlGmrczV59XIn / goyt9x0xXOd8Gs3Qswo1oXqSttH2QPO548C0fbdBvvlUupzS4S0Rl + aShoQwnj + qFDpA ==&connectionData = [{ “名称”: “”}] P>
Request path: /signalr/connect User host address: 10.240.14.26 User: <remvoved> Is authenticated: True Authentication Type: Negotiate Thread account name: <remvoved> Thread information: Thread ID: 23 Thread account name: <remvoved> Is impersonating: False Stack trace: at Microsoft.AspNet.SignalR.PersistentConnection.GetConnectionId(HostContext上下文,字符串连接令牌)在 Microsoft.AspNet.SignalR.PersistentConnection.ProcessRequest(HostContext 上下文)在 Microsoft.AspNet.SignalR.Hubs.HubDispatcher.ProcessRequest(HostContext 上下文)在 Microsoft.AspNet.SignalR.PersistentConnection.ProcessRequest(IDictionary`2 环境)在 Microsoft.Owin.Mapping.MapMiddleware.d__0.MoveNext() --- 从先前抛出异常的位置结束堆栈跟踪 --- 在 System.Runtime.ExceptionServices.ExceptionDispatchInfo.Throw() 在 Microsoft.Owin.Host.SystemWeb.IntegratedPipeline.IntegratedPipelineContext.EndFinalWork(IAsyncResult 一只老鼠 System.Web.HttpApplication.AsyncEventExecutionStep.System.Web.HttpApplication.IExecutionStep.Execute() 在 System.Web.HttpApplication.ExecuteStep(IExecutionStep 步骤, Boolean & completedSynchronously)
【问题讨论】:
标签: signalr