我有1 SignalR
个连接和2个Hubs
,ChatHub
& OnlineHub
。
我一直在研究如何OnConnect
&每个OnDisconnect
Hub
。
目前,当我开始与服务器建立连接时,ChatHub
和OnlineHub
都会运行OnConnected()
。无论如何我可以将它们分开吗?
$.connection.hub.url = chatHubUrl;
var chat = $.connection.ChatHub;
var onlinehub = $.connection.OnlineHub;
$.connection.hub.start({ withCredentials: false }).done(function () {
onlinehub.server.connectGlobalConnection(userId, token).done(function () {});
});
[HubName("OnlineHub")]
public class OnlineHub : Hub
{
public override Task OnConnected()
{
Groups.Add(Context.ConnectionId, "Online");
return base.OnConnected();
}
}
[HubName("ChatHub")]
public class ChatHub : Hub
{
public override Task OnConnected()
{
return base.OnConnected();
}
}
我要问的是,每个集线器都可以作为单一连接吗?
我们说来自URL-Chat的ChatHub
,来自URL-Online的OnlineHub
。
所以我可以很容易地发现他们的OnConnect
& OnDisconnect