2016-06-09 54 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