AngularFire:从SimpleLogin中的电子邮件获取用户数据的ID

网络的星球

我正在尝试通过AngularFire和Angular.js使用Firebase实现一些简单的使用注册。我正在使用SimpleLogin工具来管理用户。我可以创建用户就可以了。

  var firebaseRef = new Firebase(FIREBASE_URL);
  var simpleLogin = $firebaseSimpleLogin(firebaseRef);

  var firebaseUsersRef = new Firebase(FIREBASE_URL + 'users');
  var firebaseUsers = $firebase(firebaseUsersRef);

  var myObject = {

    register: function(user) {
      var myDate = new Date().getTime();

      return simpleLogin.$createUser(
        user.email, user.password)
        .then(function(regUser) {
            var userInfo = {
                date: myDate,
                md5: regUser.md5_hash,
                firstname: user.firstname,
                lastname: user.lastname,
                email: user.email
              }
            firebaseUsers.$push(userInfo).then(function(ref) {
              userInfo.uid = ref.name();
              $rootScope.currentUser = userInfo;
            });
        }); //push user
    }, //register

奇迹般有效。为了在用户登录时获得此信息,我尝试在$ rootscope上实现事件处理程序。我希望它搜索我存储的uid,然后让我记录正确的用户信息。

$rootScope.$on('$firebaseSimpleLogin:login', function (e, authUser) {
  var query = $firebase(firebaseRef.startAt(authUser.uid).endAt(authUser.uid));
  console.log(query);
  $location.path('/meetings');
});

为了使用startAt和endAt,我必须建立$ priority。尝试时,出现错误提示我不能使用任何特殊字符。所以那永远都行不通。我并不真正在乎这些数据的存储方式,我只想获取数据的索引,以便可以找到合适的用户。

网络的星球

多亏了弗兰克(Frank),我得以找到正确的方法来做到这一点。为了使自己的用户对象可搜索,我可以使用simpleLogin对象中的uid。所以我的注册功能是这样的:

var firebaseRef = new Firebase(FIREBASE_URL);
var simpleLogin = $firebaseSimpleLogin(firebaseRef);

var myObject = {
register: function(user) {
  var myDate = new Date().getTime();

  return simpleLogin.$createUser(user.email, user.password)
    .then(function(regUser) {
        var userInfo = {
            date: myDate,
            md5: regUser.md5_hash,
            firstname: user.firstname,
            lastname: user.lastname,
            email: user.email
          }

        firebaseUsers.$set(regUser.uid, userInfo);
    }); //add user
}, //register
} //my Object

使用set而不是push,我可以将注册用户的uid存储到对象中,然后传递要添加的内容作为第二个参数。现在,我的数据库将按照uid来组织用户,可以通过url访问。

然后,当用户登录时,Firebase将与已认证的用户一起引发登录事件,我可以捕获并使用该事件将当前用户添加到整个应用程序可访问的$ rootScope中。

 $rootScope.$on('$firebaseSimpleLogin:login', function (e, authUser) {
    var ref = new Firebase(FIREBASE_URL + '/users/' + authUser.uid);
    var user = $firebase(ref).$asObject();

    user.$loaded().then(function() {
      $rootScope.currentUser = user;
    });

    $location.path('/meetings');
  });

感谢您为我指明了正确的方向弗兰克。

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

WordPress通过电子邮件获取用户ID

来自分类Dev

登录时从用户集合中获取用户数据

来自分类Dev

mysql查询未获取用户数据

来自分类Dev

如何从用户数组中提取电子邮件

来自分类Dev

PHP登录-从数据库获取用户数据还是存储在Session中?

来自分类Dev

Facebook SDK 4-获取用户数据

来自分类Dev

AWS启动配置未获取用户数据

来自分类Dev

通过电子邮件地址或用户ID构造用户数据

来自分类Dev

使用ajax获取用户数据

来自分类Dev

从ID的对象数组中获取用户数据

来自分类Dev

登录时从用户集合中获取用户数据

来自分类Dev

登录时从用户集合中获取用户数据

来自分类Dev

从TokenCredential对象(.NET)获取用户数据

来自分类Dev

在django电子邮件中包括保存的用户数据

来自分类Dev

在Android上从Spotify获取用户数据

来自分类Dev

在Bigquery中获取用户的电子邮件ID

来自分类Dev

如何在odoo的电子邮件模板中获取用户公司和管理员的电子邮件ID

来自分类Dev

从其会话Codeigniter获取用户数据

来自分类Dev

使用Rails上的SendGrid发送确认电子邮件-我是否保存用户数据?

来自分类Dev

在Concrete 5.7中的包控制器中获取用户数据

来自分类Dev

如何使用 SharedPreferences 从 RegisterActivity 获取用户数据

来自分类Dev

根据用户电子邮件获取每月累计用户数

来自分类Dev

PHP登录后获取用户数据

来自分类Dev

顶点选择列表,获取用户数据

来自分类Dev

从 ID 获取用户数据:WP REST API

来自分类Dev

在使用 microsoft graph api 的某些情况下,电子邮件为 None(在获取用户数据时)

来自分类Dev

当我在 ionic 中输入电子邮件时,我想从 firebase 获取用户 ID

来自分类Dev

如何显示 MySQL 数据库中的特定数据?(获取用户的电子邮件)

来自分类Dev

获取用户数据

Related 相关文章

  1. 1

    WordPress通过电子邮件获取用户ID

  2. 2

    登录时从用户集合中获取用户数据

  3. 3

    mysql查询未获取用户数据

  4. 4

    如何从用户数组中提取电子邮件

  5. 5

    PHP登录-从数据库获取用户数据还是存储在Session中?

  6. 6

    Facebook SDK 4-获取用户数据

  7. 7

    AWS启动配置未获取用户数据

  8. 8

    通过电子邮件地址或用户ID构造用户数据

  9. 9

    使用ajax获取用户数据

  10. 10

    从ID的对象数组中获取用户数据

  11. 11

    登录时从用户集合中获取用户数据

  12. 12

    登录时从用户集合中获取用户数据

  13. 13

    从TokenCredential对象(.NET)获取用户数据

  14. 14

    在django电子邮件中包括保存的用户数据

  15. 15

    在Android上从Spotify获取用户数据

  16. 16

    在Bigquery中获取用户的电子邮件ID

  17. 17

    如何在odoo的电子邮件模板中获取用户公司和管理员的电子邮件ID

  18. 18

    从其会话Codeigniter获取用户数据

  19. 19

    使用Rails上的SendGrid发送确认电子邮件-我是否保存用户数据?

  20. 20

    在Concrete 5.7中的包控制器中获取用户数据

  21. 21

    如何使用 SharedPreferences 从 RegisterActivity 获取用户数据

  22. 22

    根据用户电子邮件获取每月累计用户数

  23. 23

    PHP登录后获取用户数据

  24. 24

    顶点选择列表,获取用户数据

  25. 25

    从 ID 获取用户数据:WP REST API

  26. 26

    在使用 microsoft graph api 的某些情况下,电子邮件为 None(在获取用户数据时)

  27. 27

    当我在 ionic 中输入电子邮件时,我想从 firebase 获取用户 ID

  28. 28

    如何显示 MySQL 数据库中的特定数据?(获取用户的电子邮件)

  29. 29

    获取用户数据

热门标签

归档