我有一个简单的Hub
,它在我的网络应用和我的SL5应用程序之间使用1.0.0-rc2。
升级到1.0.1后,我的.Net Winform客户端仍然可以连接到集线器,但我的SL5客户端无法再连接。
在调用Subscribe时,我可以看到Fiddler中的Negotiate调用(返回200,看起来是有效的JSON),然后是hub Closed
事件触发。 Error事件永远不会触发,然后就是它的结束。至少就我在Fiddler中所说的而言,没有尝试实际连接。
有什么想法吗?这是我的SL5代码,非常简单/直接。
hub = new HubConnection("http://localhost/ADE");
hub.Closed += new Action(hub_Closed);
hub.Error += new Action<Exception>(hub_Error);
hub.Reconnected += new Action(hub_Reconnected);
hub.Reconnecting += new Action(hub_Reconnecting);
hub.StateChanged += new Action<StateChange>(hub_StateChanged);
hubProxy = hub.CreateHubProxy(hubName);
//Removed my hubProxy.On calls for brevity.
hub.Start().ContinueWith(task =>
// {
//});
答案 0 :(得分:1)
尝试使用SignalR1.0.1和SL5的this sample。
要访问SL5客户端,请导航至http://localhost:18628/SignalR.Sample.SilverlightClientTestPage.aspx
在Fiddler上,你应该得到这些http请求
http://localhost:18628/signalr/negotiate?noCache=cd92304d-c824-4c91-abdd-e77c8d096b58
http://localhost:18628/signalr/connect?transport=serverSentEvents&connectionToken=rse-NdoiZ1Hi7riN_beL6J-zrkGMPm1A9p8urTZn_1sTuZVeEzVWayykaN-Km_fmqBoV06D1e7h5fPWl4kgggABs3x7wiItdd8zJKE9FSCjZsYEUQOdFrzAg-WmA7rUx0&connectionData=[{"Name":"SampleHub"}]&noCache=0c4c1fa1-9aa9-409b-acf7-165faa0d699a
http://localhost:18628/signalr/send?transport=serverSentEvents&connectionToken=rse-NdoiZ1Hi7riN_beL6J-zrkGMPm1A9p8urTZn_1sTuZVeEzVWayykaN-Km_fmqBoV06D1e7h5fPWl4kgggABs3x7wiItdd8zJKE9FSCjZsYEUQOdFrzAg-WmA7rUx0