首页 > 解决方案 > Firebase 断开连接

问题描述

我是 Firebase 后端的新手。我想在后端实现 firebase onDisconnect 功能。我有大约 100 个授权的 firebase 用户,每个用户都有一个由 firebase 生成的唯一 ID。我怎么知道哪个用户现在没有连接。我看过例子,每个人都在讲述这段代码;

admin.database().ref().child(".info/connected").on("value", function (snap) {
  connected = snap.val() === true;
  if (connected) {

  } else {

  }
});

如何使用上述代码获取与每个用户关联的唯一 Firebase ID,或者我如何知道哪个已断开连接?

标签: javascriptandroidfirebasefirebase-realtime-database

解决方案


首先,当用户当时打开应用程序时,设置一个具有当前状态的条目,例如

users :
{
  "784823468sugfsdjf":"online",
  "3223232fdfdfdffdf":"online",
  "y32y32y32y32y3y23":"online",
  "3b2jg434jg343g4h3":"offline"
}

现在使用更新所有用户的状态

admin.database().ref().child(".info/connected").on("value", function (snap) {
  connected = snap.val() === true;
  if (connected) {
      updated(uid,"Online");
  } else {
      updated(uid,"offline");
  }
});

通过这种方式,您将获得所有用户的当前状态。


推荐阅读