Domanda

Sono nuovo a Node JS e Socket IO, ma ho sentito molte cose buone su di loro, quindi volevo dare un'occhiata a loro da utilizzare come sistema di notifica in tempo reale.

Nel mio scenario, un utente aprirà una presa per ascoltare le notifiche pubblicate all'utente: ogni utente aprirà una connessione alle proprie notifiche, non a un canale "pubblico".

var jug = new Juggernaut;
var channel = "/user/" + userId + "/notifications";
jug.subscribe(channel, function(data){
    console.log("Got data: " + data);
});

Quindi in quasi tutti i casi sarà 1 utente che si iscriverà a 1 canale.

Ho 2 preoccupazioni:

  1. Tutti gli esempi di Juggernaut che ho visto coinvolgono più clienti che si iscrivono a 1 canale-questo mi fa pensare che non sia progettato per essere utilizzato per le comunicazioni 1-1.
  2. Esiste un modo per aggiungere l'autenticazione in modo che solo gli utenti specificati ricevano il messaggio (cioè l'utente attualmente accessibile è l'unico che può iscriversi al suo canale di notifica). Se ci fosse un modo per passare dati aggiuntivi sull'abbonamento, probabilmente sarebbe sufficiente (hash l'ID utente e usarlo come segno forse?).

Qualcuno ha qualche esperienza con il juggernaut che potrebbe aver incontrato questo scenario prima?

È stato utile?

Soluzione

Tutti gli esempi di juggernaut che ho visto coinvolgono più clienti che si iscrivono a 1 canale

Qual è la differenza tra molti abbonati e un abbonato all'editore?

C'è un modo per aggiungere autenticazione in modo che solo gli utenti specificati ricevano il messaggio

Sicuro. Richiedi al canale di avere l'autenticazione e poiché sarà da UserId, allora conosci già le cose necessarie per proteggerlo.

Per quanto riguarda come far sì che Juggernaut faccia autenticazione, sembra che tu possa pubblicare intestazioni host per gestirlo per te.

Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top