No dejes de compartir nuestros post y códigos en tus redes, necesitamos tu ayuda para aumentar esta comunidad.
Solución:
$.connection.hub se crea en la inclusión /signalr/hubs.
Al final del archivo, esencialmente lo hace:
$.connection.hub = $.hubConnection("/signalr", useDefaultPath: false );
Para crear el proxy concentrador, haga lo siguiente:
var myHub = $.connection.hub.createHubProxy('myHub');
Ejemplo simple para múltiples conexiones:
var connection1 = $.hubConnection("http://www.myfirstendpoint.com");
var connection2 = $.hubConnection("http://www.mysecondendpoint.com");
var myCon1Hub = connection1.createHubProxy('myCon1Hub');
var myCon2Hub = connection2.createHubProxy('myCon2Hub');
myCon1Hub.client.foo = function() ... Whatever you want ... ;
myCon2Hub.client.foo = function() ... Whatever you want ... ;
connection1.start();
connection2.start();
Mi solución para tales ocasiones:
var SignalRHelpers = function ()
var _connectionDeferred;
var subscribeToConnectionStart = function (callback)
if (!_connectionDeferred) // start connection if not yet initialized
_connectionDeferred = $.connection.hub.start();
if ($.connection.hub.state == $.connection.connectionState.connected && callback)
// already connected
callback();
else if (callback)
// register handler
_connectionDeferred.done(callback);
;
return
SubscribeToConnectionStart: subscribeToConnectionStart
;
();
Almacena internamente el objeto de promesa de start() y adjunta controladores según sea necesario.
Básicamente, simplemente llame a SignalRHelpers.SubscribeToConnectionStart cada vez que necesite conectarse. Por ejemplo
SignalRHelpers.SubscribeToConnectionStart(function()
someHub.server.executeSomething();
);
Sección de Reseñas y Valoraciones
Al final de la artículo puedes encontrar las observaciones de otros programadores, tú de igual manera tienes la opción de insertar el tuyo si te apetece.
¡Haz clic para puntuar esta entrada!
(Votos: 0 Promedio: 0)