Я вызываю метод на сервере, чтобы добавить соединение в группу SignalR, когда установлено соединение между клиентом и сервером. Ниже приведен код для этого.
var chat = $.connection.notificationHub;
$.connection.hub.start().done(function () {
console.log('Started the connection:::::: ');
chat.server.addConnectionToGroup().fail(function (e) {
console.log(e.message);
console.log(e.stack);
});
console.log('Called server :::::: ');
}).fail(function (reason) {
console.log("SignalR connection failed: " + reason);
});
chat.client.sendNotification = function (message) {
displayNotification(messageJson);
}
Ниже приведен метод внутри концентратора сервера:
public void AddConnectionToGroup()
{
Debug.WriteLine("addConnectionToGroup Called :::::: ");
}
Много раз вызывается метод AddConnectionToGroup
. Но случайно клиент не может позвонить.
Когда он не может вызвать, следуют трассировка стека и сообщение, отображаемое на консоли клиента.
There was an error invoking Hub method 'notificationhub.AddConnectionToGroup'.
Error: There was an error invoking Hub method 'notificationhub.AddConnectionToGroup'.
at Object.error (https://localhost:44357/Scripts/jquery.signalR-2.4.0.min.js:9:5022)
at init.l (https://localhost:44357/Scripts/jquery.signalR-2.4.0.min.js:9:37132)
at t.fn.init.<anonymous> (https://localhost:44357/Scripts/jquery.signalR-2.4.0.min.js:9:38251)
at t.fn.init.<anonymous> (https://localhost:44357/Scripts/jquery.signalR-2.4.0.min.js:9:13346)
at t.fn.init.dispatch (https://localhost:44357/scripts/js/jquery-3.3.1.min.js:2:50730)
at t.fn.init.y.handle (https://localhost:44357/scripts/js/jquery-3.3.1.min.js:2:48365)
at Object.trigger (https://localhost:44357/scripts/js/jquery-3.3.1.min.js:2:84124)
at w.fn.init.triggerHandler (https://localhost:44357/scripts/js/jquery-3.3.1.min.js:2:84921)
at Object.triggerReceived (https://localhost:44357/Scripts/jquery.signalR-2.4.0.min.js:9:22005)
at Object.processMessages (https://localhost:44357/Scripts/jquery.signalR-2.4.0.min.js:9:22110)
Почему вызов метода происходит случайно?
UPDATE:
Когда я развернул приложение в облаке Azure, оно работало нормально. Таким образом, я считаю, что проблема с Azure- SignalR
при использовании в локальной среде.