我在带有信号器的 ASP.NET 网站上有一个简单的项目。启动连接集线器的代码:
var scriptStarted = 'var myHub = $.connection.' + hubName + ';' + methodNameInitHub + '(myHub);';
$.connection.hub.error(function () {
alert("An error occured");
});
$.connection.hub.start()
.done(function () {
eval(scriptStarted);
myHub.server.registerClient($.connection.hub.id, clientIdentifier);
})
.fail(function () { alert("Could not Connect!"); });
此方法在“methodNameInitHub + '(myHub);”中调用
function methodInitEventHub(hub) {
if (hub) {
hub.client.addEvent = function (eventOperationName, eventType) {
$("#events").append("<li>" + eventOperationName + ", " + eventType + "</li>");
};
}
}
停止连接集线器的代码:
$.connection.hub.stop();
当我加载 .aspx 页面并启动集线器时,所有代码都执行没有错误,但未收到来自服务器的事件。在我停止并重新启动后,客户端(浏览器) http://clip2net.com/s/2CP2e开始收到集线器连接事件
为什么我需要重新启动连接集线器才能开始从服务器接收到事件?谢谢。