【问题标题】:Firebase authentication (email/password) how to set user's uid?Firebase 身份验证(电子邮件/密码)如何设置用户的 uid?
【发布时间】:2017-04-30 13:38:43
【问题描述】:

我正在使用电子邮件/密码进行身份验证,如下所示:

firebase.auth().createUserWithEmailAndPassword(email, password).catch(function(error) {
 // Handle Errors here.
});

并在此处收听 auth:

firebase.auth().onAuthStateChanged(function(user) {
  if (user) {
    // User is signed in.
    console.log(user);
  } else {
    // No user is signed in.
    console.log("Not signed in");
  }
});

效果很好。在检查 auth 返回的用户对象时,uid 是一个随机字符串,有没有办法在我创建帐户时设置这个 uid?例如,uid="someUserName"?

谢谢

【问题讨论】:

    标签: firebase firebase-authentication


    【解决方案1】:

    Firebase 身份验证不像数据库,您可以在其中添加属性等。它为您处理 UID 等。您可以做的是,在您的 Firebase 数据库中添加一个用户目录并在其中存储其他信息(例如用户名),并将 UID 作为键。

    这是一个例子:

    如果您要经常使用它,最好进入数据库规则并在此用户名上添加索引:

    【讨论】:

    • 我明白了。我想这样做是因为如果我有一些 $user 路线我想做:auth.uid === $user。我怀疑你可以做一些安全规则检查密钥是否等于 auth.uid?
    猜你喜欢
    • 2021-11-21
    • 2016-02-11
    • 1970-01-01
    • 2013-07-11
    • 2018-04-25
    • 2016-07-19
    • 2019-07-13
    • 2017-01-03
    相关资源
    最近更新 更多