如何在数据库中创建用户UID用户?用户注册后是否有触发事件?

时间:2018-04-10 16:57:52

标签: firebase firebase-authentication google-cloud-functions

用户登录后,我想将用户添加到firebase数据库:

enter image description here e.g:

{
  "users" : {
    "testUserUID1" : {
      "username" : "User 1",
      "phoneNumber" : "+611111111",
    }
   }
}

用户注册后是否有触发事件,以便我可以将数据输入数据库?

e.g。

functions.database.ref('/???/{userId}/???').onWrite((event) => {

});

我不想在客户端使用完成事件将用户uid发送到数据库以创建用户(当用户uid传回给用户时,用户设备有可能被断开连接。数据库)

2 个答案:

答案 0 :(得分:0)

似乎有auth事件:

functions.auth.user().onCreate(event => {

    const user = event.data;

    var userObject = {
        displayName : user.displayName,
        email : user.email,
        photoUrl : user.photoURL,
        createdOn : user.metadata.createdAt
    };
    admin.database().ref('users/' + user.uid).set(userObject);
});

答案 1 :(得分:0)

您可以使用以下代码在Firebase数据库中进行更改:

DatabaseReference myRef = FirebaseDatabase.getInstance()。getReference()

然后运行该功能: 。myRef.child( “用户”)子(。FirebaseAuth.getInstance()getCurrentUser()的getuid())子( “用户名”)的setValue();

这将创建对数据库的引用并创建'child()'中指定的子项,然后通过'setValue();'保存值。

祝你好运;)