流星服务器端会话

时间:2015-10-26 19:28:58

标签: meteor

有没有办法在会话服务器上存储特定于当前连接的信息?

类似的东西

if(Meteor.isServer){
   Session.set('something-only-server-side-for-current-connection', 'hello');
}

谢谢。

2 个答案:

答案 0 :(得分:1)

我会创建一个名为 UserSessions (或类似)的集合,并将您需要的任何内容放入Meteor.default_connection._lastSessionId索引的内容中,结果是当前 sessionId [reference]

UserSessions.insert({ sessionId: Meteor.default_connection._lastSessionId,
  createdAt: new Date(), key1: value, key2: value, ...});

确保索引唯一sessionId以提高性能。您还可以根据createdAt时间戳随时清除旧会话。

答案 1 :(得分:1)

this.connection可用于publish functionsmeteor methods

在服务器上创建另一个(未发布的)集合(或者您可以使用另一个键值存储)来存储与该连接相关的参数。创建onStop callback以清理服务器端集合(或定期执行此操作)。

erasaur:server-session是一个看起来与上面做的非常相似的软件包。