【问题标题】:how to get current user on firebase如何在firebase上获取当前用户
【发布时间】:2014-09-16 01:46:23
【问题描述】:

我想知道如何获取当前用户。我正在制作一个功能,用户正在创建一个组,并希望同时将创建该组的用户添加到其中。我可以使小组变得更好,这很简单。但我不知道如何获取简单登录对象之外的用户对象。

如果已经有几个主题说明了这一点,我很抱歉,但我一直在寻找几个小时,但无法找到任何解释它的东西。任何帮助将不胜感激。

【问题讨论】:

标签: javascript firebase


【解决方案1】:

简单登录的回调返回当前登录的用户。此回调在您的用户进行身份验证时运行,或者如果您的用户已经通过身份验证,它会在页面加载时运行。

simple login docs获取此代码:

var myRef = new Firebase("https://<your-firebase>.firebaseio.com");
var authClient = new FirebaseSimpleLogin(myRef, function(error, user) {
  if (error) {
    // an error occurred while attempting login
    console.log(error);
  } else if (user) {
    // user authenticated with Firebase
    console.log("User ID: " + user.uid + ", Provider: " + user.provider);
  } else {
    // user is logged out
  }
});

用户对象在回调中公开。它仅在该回调执行期间的范围内,因此如果您想在外部使用它,请将其存储在一个变量中以便以后重用,如下所示:

var currentUser = {};
var myRef = new Firebase("https://<your-firebase>.firebaseio.com");
var authClient = new FirebaseSimpleLogin(myRef, function(error, user) {
  if (error) {
    // an error occurred while attempting login
    console.log(error);
  } else if (user) {
    // user authenticated with Firebase
    currentUser = user;
  } else {
    // user is logged out
  }
});
...

// Later on in your code (that runs some time after that login callback fires)
console.log("User ID: " + currentUser.uid + ", Provider: " + currentUser.provider);

【讨论】:

  • 谢谢!你猜对了,这对我帮助很大。非常感谢对这一切的深入解释。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 2020-11-30
  • 1970-01-01
  • 2018-01-10
  • 2020-10-29
  • 2019-05-28
  • 2017-04-06
  • 2020-03-29
相关资源
最近更新 更多