我试图使用集线器连接状态来避免每个选项卡多个连接。我做了什么
至今 :
var connection = $.hubConnection("/signalr", { useDefaultPath: false });
connection.client = function () { };
var hub = connection.createHubProxy("NotificationHub");
hub.on("AddMessage", Method);
if (hub && hub.state === $.signalR.connectionState.disconnected) {
connection.start({ jsonp: true })
.done(function () {
hub.invoke("FakeLiveState");
hub.invoke('ConnectionConnectedSaveDB', controllerNameSignalR).done(function () {
}).fail(function (error) {
});
})
.fail(function (a) {
});
connection.disconnected(function () {
setTimeout(function () {
connection.start({ jsonp: true })
.done(function () {
hub.invoke('ConnectionConnectedSaveDB', controllerNameSignalR).done(function () {
}).fail(function (error) {
});
})
.fail(function (a) {
});;
}, 5000);
});
}
但是 hub.state 的结果不是文档中提到的数字:
stateChanged:连接状态更改时引发。提供旧状态和新状态(Connecting、Connected、Reconnecting 或 Disconnected)。
hub.state :