Can't get SignalR work with two Hubs
本文关键字:work with two Hubs SignalR get Can | 更新日期: 2023-09-27 18:24:45
我已经开始挖掘SignalR 0.4,但遇到了一个问题。我想在同一页上有两个不同的集线器,为了保持简单,它们是:
public class ChatHub : Hub
{
public void Send(string message)
{
Clients.addMessage(message);
}
}
public class Chat2Hub : Hub
{
public void Send2(string message)
{
Clients.addMessage2(message);
}
}
这是我的客户代码:
function initChat() {
var chat = $.connection.chat;
chat.addMessage = function (message) {...};
$('.send-cmd').click(function () {...});
return $.connection.hub.start();
}
function initChat2() {
var chat2 = $.connection.chat2;
chat2.addMessage2 = function (message) {...};
$('.send2-cmd').click(function () {...});
return $.connection.hub.start();
}
$(function() {
initChat().done(function() {
initChat2();
});
});
很简单,但我无法让它们一起工作。在本例中,"chat"正常工作,而"chat2"失败(没有错误)。如果我颠倒初始化的顺序,当然会发生相反的情况。
我错过了什么?
为什么要启动两次集线器连接。所有集线器都有一个连接,所以只需要调用$.connection.hub.start()一次。