Passport.js:使用骨干时访问用户

我在node.js应用程序中使用passport.js来获取OAuth工作(真棒!),但是现在,我遇到了一件事情。

我在客户端使用backbone.js来创build视图(我试图创build一个SinglePage应用程序…),唯一的方法,我想获得用户ID或类似的东西在骨干网中创build首先是一个隐藏在jade模板中的input,然后将其传递给我的backbone视图中的构造函数….或者只是将值赋给一个javascriptvariables,并将其传递给pipe理所有视图的路由器,并将其传递给每个视图那需要它

我认为这不是一个好主意,可能有更好的select!

你会怎么做?

谢谢!

       

网上收集的解决方案 "Passport.js:使用骨干时访问用户"

我还没有在Backbone做任何事情,但是这里和这里已经有了解决scheme。 只要你在某个地方获得会话ID,你就可以用cookie- package检索会话(cookie已经从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); });