.net 信号R-未将大型消息从客户端传递到服务器

.net 信号R-未将大型消息从客户端传递到服务器,.net,signalr,.net,Signalr,我们发现Uri字符串太长。将大型消息从Signal.NET客户端传递回Signal服务器时出错。较小的消息可以正常工作 向信号服务器发送数据时发生应用程序错误:URI无效:URI字符串太长 用于将数据发送回服务器的VB.NET代码: Private Async Function SendData(ByVal sToUser As String, ByVal sToDevice As String, ByVal sDataType As String, ByVal sData As String)

我们发现Uri字符串太长。将大型消息从Signal.NET客户端传递回Signal服务器时出错。较小的消息可以正常工作

向信号服务器发送数据时发生应用程序错误:URI无效:URI字符串太长

用于将数据发送回服务器的VB.NET代码:

Private Async Function SendData(ByVal sToUser As String, ByVal sToDevice As String, ByVal sDataType As String, ByVal sData As String) As Task
    Try
        myEvent = New CEvent(Now, sCompanyName, "INFO", "APP", "Sending data...", 100, 100)
        myEventLog.WriteCEvent(myEvent)

        Await trans.Invoke("sendData", _
                           New String() {msSiteCode, _
                                         sCompanyName, _
                                         sToUser & sToDevice, _
                                         sDataType, _
                                         sData}).ContinueWith(Function(task)
                                                                  If task.IsFaulted Then
                                                                      myEvent = New CEvent(Now, sCompanyName, "ERROR", "CCMDAPP", _
                                                                                              "APP Error sending data to SignalR Server: " & task.Exception.Message, 100, 100)
                                                                      myEventLog.WriteCEvent(myEvent)
                                                                  Else
                                                                      myEvent = New CEvent(Now, sCompanyName, "INFO", "CCMDAPP", _
                                                                                              "CCMDAPP Data sent to the SignalR Server with arguments: " & msSiteCode & " " & sCompanyName & " " & sToUser & sToDevice & " " & sData, 100, 100)
                                                                      myEventLog.WriteCEvent(myEvent)
                                                                  End If
                                                              End Function)
    Catch ex As Exception
        myEvent = New CEvent(Now, sCompanyName, "ERROR", "APP", "APP Error sending data to SignalR Server: " & ex.Message, 100, 100)
        myEventLog.WriteCEvent(myEvent)
    End Try
End Function
堆栈跟踪,在.NET SignalR客户端上为所有用户启用。请注意,消息IDS3和ID4请求了大量未发送回服务器的数据

06:09:38.5417500-空-更改状态断开连接,正在连接

06:09:42.3567500-f933feff-b1ae-41d8-b417-1fc114fdffdb-WS连接到:wss://www.example.com/SignalRServer/signalr/connect?transport=webSockets&connectionToken=wbsXZGWLigLa%2B7btvrZ7SZWcG%2FYOjtwE8ah8yqlhZdBVP%2FoM4COAkvwqihzLOIS%2FCHT5DbdQZzmgjVVEiNs33TAAIgfahlv3rQuE%2B%2FpLeszoGPr9REr%2FmUUpZPGWj3Gj&connectionData=[{名称:发送器}]

06:09:42.3630000-f933feff-b1ae-41d8-b417-1fc114fdffdb-自动:无法使用传输WebSocket连接到。System.PlatformNotSupportedException:此平台不支持WebSocket协议。 在System.Net.WebSocket.ClientWebSocket..ctor上 在Microsoft.AspNet.signal.Client.Transports.WebSocketTransport.d__2.MoveNext

06:09:42.3692500-f933feff-b1ae-41d8-b417-1fc114fdffdb-SSE:GET{Name:Transmitter}]

06:09:43.1605000-f933feff-b1ae-41d8-b417-1fc114fdffdb-SSE:ON消息数据:已初始化

06:09:43.1630000-f933feff-b1ae-41d8-b417-1fc114fdffdb-SSE:OnMessageData:{C:d-AA7FBA87-B,F0 | GF,0 | GG,1 | GH,0,S:1,M:[{H:发射机,M:连接,A:[f933feff-b1ae-41d8-b417-1fc114fdffdb,2013年12月19日下午4:13:37]}

06:09:43.1817500-f933feff-b1ae-41d8-b417-1fc114fdffdb-变更状态连接,已连接

06:09:44.5080000-f933feff-b1ae-41d8-b417-1fc114fdffdb-SSE:OnMessageData:{C:d-AA7FBA87-B,F0 | GF,1 | GG,1 | GH,0,M:[{H:Transmitter,M:isLoggedIn,A:[true,,,,]}

06:09:44.5080000-f933feff-b1ae-41d8-b417-1fc114fdffdb-OnMessage{I:0}

06:09:45.4905000-f933feff-b1ae-41d8-b417-1fc114fdffdb-SSE:OnMessageData:{C:d-AA7FBA87-B,F0 | GF,2 | GG,1 | GH,0,M:[{H:发射机,M:命令发送,A:[{\MsgID\:\0\,\CompanyCode\:\ACCOUNTS:xyz软件p/L V90\,\FromUser\:\username@example.com\,\FromDevice\:\16\,\Action\:3,\ObjectType\:16,\Params\:[\A1\]}]}

06:09:45.5242500-f933feff-b1ae-41d8-b417-1fc114fdffdb-SSE:OnMessageData:{C:d-AA7FBA87-B,F0 | GF,5 | GG,1 | GH,0,M:[{H:发射机,M:命令发送,A:[{\MsgID\:\1\,\CompanyCode\:\ACCOUNTS:xyz软件p/L V90\,\FromUser\:\username@example.com\,\FromDevice\:\16\,\Action\:3,\ObjectType\:36,\Params\:[\Job Maintenance\]}]},{H:Transmitter,M:commandSent,A:[{\MsgID\:\2\,\CompanyCode\:\ACCOUNTS:xyz软件P/L V90\,\FromUser\:\username@example.com\,\FromDevice\:\16\,\Action\:3,\ObjectType\:23,\Params\:[\username@example.com\,\username@example.com\,\0\]}]},{H:Transmitter,M:commandSent,A:[{\MsgID\:\3\,\CompanyCode\:\ACCOUNTS:xyz软件P/L V90\,\FromUser\:\username@example.com\,\FromDevice\:\16\,\Action\:3,\ObjectType\:5,\Params\:[\\,\ACTIVE\,\50\]}

06:09:46.0342500-f933feff-b1ae-41d8-b417-1fc114fdffdb-OnMessage{I:1}

06:09:46.5655000-f933feff-b1ae-41d8-b417-1fc114fdffdb-OnMessage{I:2}

06:09:46.5680000-f933feff-b1ae-41d8-b417-1fc114fdffdb-OnMessage{I:4}

06:09:46.6005000-f933feff-b1ae-41d8-b417-1fc114fdffdb-OnMessage{I:3}

06:09:46.7567500-f933feff-b1ae-41d8-b417-1fc114fdffdb-OnMessage{I:5}

06:09:47.2567500-f933feff-b1ae-41d8-b417-1fc114fdffdb-OnMessage{I:7}

06:09:47.4930000-f933feff-b1ae-41d8-b417-1fc114fdffdb-OnMessage{I:6}

06:10:20.4480000-f933feff-b1ae-41d8-b417-1fc114fdffdb-SSE:OnMessageData:{}

06:11:20.4792500-f933feff-b1ae-41d8-b417-1fc114fdffdb-SSE:OnMessageData:{}

06:12:20.5005000-f933feff-b1ae-41d8-b417-1fc114fdffdb-SSE:OnMessageData:{}

06:12:50.5242500-f933feff-b1ae-41d8-b417-1fc114fdffdb-SSE:OnMessageData:{C:d-AA7FBA87-B,F1 | GF,5 | GG,1 | GH,0,M:[{H:发射机,M:离开,A:[45fccfd7-5928-430f-867d-B5C76822FC,2013年12月19日下午4:16:45]}

06:13:20.5280000-f933feff-b1ae-41d8-b417-1fc114fdffdb-SSE:OnMessageData:{}

06:14:20.5555000-f933feff-b1ae-41d8-b417-1fc114fdffdb-SSE:OnMessageData:{}

06:15:05.5292500-f933feff-b1ae-41d8-b417-1fc114fdffdb-SSE:OnMessageData:{C:d-AA7FBA87-B,F1 | GF,6 | GG,1 | GH,0,M:[{H:发射机,M:命令发送,A:[{\MsgID\:\4\,\CompanyCode\:\ACCOUNTS:xyz软件p/L V90\,\FromUser\:\username@example.com\,\FromDevice\:\16\,\Action\:3,\ObjectType\:5,\Params\:[\\,\ACTIVE\,\50\]}

06:15:06.5392500-f933feff-b1ae-41d8-b417-1fc114fdffdb-OnMessage{I:9}

环境:

在Windows 2012服务器/Windows 7上发送R服务器信号。 信号R.NET C Windows 7计算机上的客户端。 我们使用异步调用,但据我们所知,为了与windows 8和windows server 2012计算机兼容,我们需要异步调用

此外,该问题是从signal R release 1.1.0升级到2.0.1的结果,没有进行其他更改。异步调用是在这次升级之前添加的

我们是否可以设置一些设置来防止这种情况?或者这确实是Signalr2.0.1的一个限制,我们需要设计一种方法来将更大的消息分块


谢谢。

您可以发布堆栈跟踪吗?完成。已根据请求添加堆栈跟踪。