在Meteor.js中查找当前会话ID

你如何find客户端当前的会话ID?

我能够得到什么似乎是最后一个会话ID,而不是当前的会话ID。

console.log(Meteor.default_connection._lastSessionId) 

这个措辞有点混乱,但_lastSessionId是当前会话ID。

它只被称为这是因为如果客户端断开连接并试图重新连接,它希望重新build立与上次会话ID的会话。

客户端会重新连接这样的消息:

 {"msg": "connect ", "session": "ERoZSR3R3f8zBQ6Ry", "version": "pre1","support":["pre1"]} 

session使用lastSessionId值。 然后这用于重新build立以前的连接。

这是在重新连接上分配新会话ID的唯一情况。 那个或者会话已经过期了。

如果服务器重新启动,则会刷新caching并且不再识别该会话,并且会分配一个新的会话ID。

默认情况下,meteorlogin令牌存储在本地存储(不是在cookie中)。

在客户端上,您可以访问

 token = Meteor._localStorage.getItem('Meteor.loginToken') 

在服务器上,一旦收到令牌,使用Accounts api来散列使用

 Accounts._hashLoginToken(res.req.body.token) 

然后,您可以针对services.resume.loginTokens.hashedToken字段的用户集合validation散列值

这个黑客可以用来build立meteor快车的整合

流星登录令牌