如何管理同一用户的并发连接。有什么方法可以限制用户可以保持活动的连接数量吗?
我可以使我的数据库像:
"users": {
...
"FAKE-USER-ID": {
"active_connections": 2
}
...
}
每当用户更改状态时,都会更新密钥active_connections
。
在这种情况下,如何管理连接丢失和应用程序崩溃等案例?是否有Firebase本地方式来执行此操作?
答案 0 :(得分:1)
要处理用户连接的时间,请查看.info/connected
。您可以使用它在用户连接时设置标志。
要处理用户断开连接的时间(通过关闭应用或因为他们失去连接),请查看onDisconnect()
。您可以在用户断开连接时删除该标志。
但是为什么要限制用户仅在单个设备上访问他们的数据? Firebase不会对每个连接收费,那么为什么要限制它?
几年前,我使用的应用程序展示了这种确切的行为,我发现自己每天都被多次锁定在应用程序之外。我转移到另一个应用程序。