У меня был один сигнальный центр в течение последнего года, без проблем. сегодня, когда вы пытаетесь добавить второй концентратор, его просто не работает. Я выполнил те же шаги, что и первый, безрезультатно.signalr пустые данные соединения на моем втором концентраторе
вот выход из моих ~/signalr/концентраторы
// Create hub signalR instance
$.extend(signalR, {
errorPageHub: {
_: {
hubName: 'Web.Infrastructure.Logging.Broadcasting.ErrorPageHub',
ignoreMembers: ['error', 'event', 'warning', 'success', 'namespace', 'ignoreMembers', 'callbacks'],
connection: function() { return signalR.hub; }
},
error: function (error, callback) {
return serverCall(this, "Error", $.makeArray(arguments));
},
event: function (eventDescription, callback) {
return serverCall(this, "Event", $.makeArray(arguments));
},
warning: function (warning, callback) {
return serverCall(this, "Warning", $.makeArray(arguments));
},
success: function (success, callback) {
return serverCall(this, "Success", $.makeArray(arguments));
}
},
pulsePageHub: {
_: {
hubName: 'Web.Infrastructure.Logging.Broadcasting.PulsePageHub',
ignoreMembers: ['tenderAdded', 'tenderUpdated', 'projectAdded', 'projectUpdated', 'namespace', 'ignoreMembers', 'callbacks'],
connection: function() { return signalR.hub; }
},
tenderAdded: function (message, callback) {
return serverCall(this, "TenderAdded", $.makeArray(arguments));
},
tenderUpdated: function (message, callback) {
return serverCall(this, "TenderUpdated", $.makeArray(arguments));
},
projectAdded: function (message, callback) {
return serverCall(this, "ProjectAdded", $.makeArray(arguments));
},
projectUpdated: function (message, callback) {
return serverCall(this, "ProjectUpdated", $.makeArray(arguments));
}
}
});
на моей странице с помощью "errorPageHub", когда я называю
$.connection.hub.start({ transport: 'longPolling' }, function() {
console.log('connection started!');
});
следующее выводится на Firebug ::
connectionData [{"name":"Web.Infrastructure.Logging.Broadcasting.ErrorPageHub","methods":["addError","addSuccess","addWarning","addEvent"]}]
connectionId 1806c3f7-e2e0-4ec7-9eb1-670a43fac912
transport longPolling
connectiondata соответствует хабу, который я инициализирую на своей странице. теперь на странице, где я пытаюсь использовать pulsePageHub, выдается на FireBug при использовании того же вызова connection.hub.start (обратите внимание, что они находятся на разных страницах, у меня есть только один вызов connection.start на странице)
connectionData []
connectionId 05b2354d-63ac-469a-bf0b-bd4e06e56426
transport longPolling
я инициализация pulseHub в точно таких же, как я делаю свою errorPageHub, но connectiondata всегда пусто, и поэтому он никогда не поднимает никаких передач. если я добавлю на эту страницу инициализацию errorPageHub, единственным отправленным сообщением является errorPageHub.
как инициализировать этот второй концентратор для приема трансляций? этот вопрос очень похож на один поставленный here, но она никогда не была решена
Мои концентраторов объявлены на стороне клиента, как так ::
var error = $.connection.errorPageHub;
error.addError = function (message) {
appendMessage(message, "error");
};
error.addSuccess = function (message) {
appendMessage(message, "info");
};
error.addWarning = function (message) {
appendMessage(message, "warning");
};
error.addEvent = function (message) {
appendMessage(message, "info");
};
}
и мой пульс страница хаб вот так:
var pulse = $.connection.pulsePageHub;
pulse.tenderAdded = function (message) {
appendMessage(message, "info");
alert("hi");
};
pulse.tenderUpdated = function (message) {
appendMessage(message, "warning");
alert("hi");
};
pulse.projectAdded = function (message) {
appendMessage(message, "info");
alert("hi");
};
pulse.projectUpdated = function (message) {
appendMessage(message, "warning");
alert("hi");
};
его более старая версия, нет .client. мой узел страницы ошибки инициализирован так var error = $ .connection.errorPageHub; error.addError = function (message) { appendMessage (message, "error"); }; error.addSuccess = function (message) { appendMessage (message, "info"); }; ошибка.addWarning = функция (сообщение) { appendMessage (сообщение, «предупреждение»); }; погрешность.addEvent = функция (сообщение) { appendMessage (сообщение, «информация»); }; – spaceman
не может получить код, чтобы хорошо выглядеть в комментарии :(обновит мой пост – spaceman
Обновление до новой версии – davidfowl