2012-08-22 17 views
5

Sto usando passport.js in un'app node.js per far funzionare OAuth (fantastico!), Ma ora ho problemi con una cosa.Passport.js: accesso utente quando si utilizza backbone

Sto usando backbone.js sul lato client, per creare le viste (sto provando a creare un'app SinglePage ...), e l'unico modo in cui sto pensando di ottenere l'id utente o qualcosa del genere in backbone sta creando prima un input nascosto nei template di giada e poi lo passa al costruttore nelle mie viste backbone .... o semplicemente assegna il valore a una variabile javascript e passandolo al router che gestisce tutte le viste e passa a ogni vista che ne ha bisogno

Penso che non sia una buona idea, e potrebbero esserci opzioni migliori!

Come lo faresti?

Grazie!

risposta

0

Non ho ancora fatto nulla in Backbone, ma ci sono già soluzioni here, here e here. Fino a quando si ottiene l'id di sessione da qualche parte, è possibile recuperare la sessione con il cookie -package (cookie è affidata in outsourcing da Connect-utils):

if(handshakeData.headers.cookie) { 
    c = cookie.parse(handshakeData.headers.cookie); 
    sid = connect.utils.parseSignedCookie(c['connect.sid'], 'keyboard cat'); 
    redis.get('sess:'+sid, function(error, result) { 
    session = JSON.parse(result); 
    handshakeData.uid = session.passport.user; 
    callback(null, true); 
    }); 
Problemi correlati