Meteor:每个用户只允许一个客户端实例

Pre*_*vić 3 meteor

有没有办法阻止用户在两个标签或浏览器中打开Meteor网站?

我正在尝试在Meteor中创建一个纸牌游戏,如果用户试图在另一个标签页或浏览器中打开页面并且只是警告他已经打开了另一个客户端实例并且可能给他/她,那么我想"抓住"在所有实例中注销的选项等.

我已经google了,但没有运气.

Mat*_*t K 5

如果要求用户登录:

  • 将连接保存到Connections集合以及用户标识.(或者配置文件本身的roomId,具体取决于您的架构)
  • 断开连接时删除连接
  • 在每个新连接上,查看用户ID是否已存在于Connections集合中

如果用户不必登录:

  • 将连接保存到Connections集合(以及用户IP)
  • 断开连接时删除连接
  • 在每个新连接上,查看Connections集合中是否已存在IP地址

在野外使用onConnection的一个例子(注意我不允许多个连接,但这只是另外5行代码):https://github.com/mattkrick/react-tac-toe/blob/master /server/gameState.jsx#L13

文档(即如何捕获IP地址):http://docs.meteor.com/#/full/meteor_onconnection