2016-06-09 51 views
3

我在网上做了大量的研究,但找不到解决方案。我在WebAPI后端创建了一个SignalR集线器并启用了CORS功能。当混合应用连接到SignalR Hub时,获取'ConnectionId格式不正确'

我也有一个客户端(Ionic)应用程序尝试连接到SignalR中心进行实时聊天。问题是,当混合应用程序试图连接到SignalR集线器时,我得到

ConnectionId的格式不正确。

我得到OnDisconnected事件在SignalR集线器,但不是OnConnected事件!

这是我的客户端代码(离子):

  • 本地主机:64965/signalr是我SignalR毂
  • SignalR代理也localhost上产生:64965/signalr /集线器
var signalr_chatHub = $.connection.ChatHub; 

signalr_chatHub.client.welcomeMessage = function (message) { 
     console.log('WelcomeMessage', message); 
}; 

$.connection.hub.url = "http://localhost:64965/signalr"; 
$.connection.hub.logging = true; 

$.connection.hub.start().done(function() { 
     console.log('signal connection connected'); 
}).fail(function (err) { 
     console.log('Could not Connect!', err); 
}); 

Chrome控制台错误:

chrome console errors

public class ChatHub : Hub<IChat> 
{ 
    public override Task OnConnected() 
    { 
     var connectionId = Context.ConnectionId; 

     return base.OnConnected(); 
    } 

    public override Task OnDisconnected(bool stopCalled) 
    { 
     var connectionId = Context.ConnectionId; 

     return base.OnDisconnected(stopCalled); 
    } 

    public override Task OnReconnected() 
    { 
     return base.OnReconnected(); 
    } 

    public void WelcomeMessage() 
    { 
     Clients.All.NewMessage("Welcome"); 
    } 
} 
+0

我也遇到同样的错误,但仍然无法找到合适的解决方案。 – Sutirth

+0

你见过这个吗? http://stackoverflow.com/questions/32762303/error-400-bad-request-from-visual-studio-2015-ripple –

回答

0