【问题标题】:How to set user data after createUserWithEmailAndPassword (web)createUserWithEmailAndPassword (web) 后如何设置用户数据
【发布时间】:2016-10-04 03:05:02
【问题描述】:

我搜索了其他问题,但我找不到任何东西,所以如果这是重复的,我很抱歉。

我正在尝试在注册到数据库时保存额外的用户数据,注册不是问题但我无法存储数据,我正在尝试这个:

//add a real time listener
   firebase.auth().onAuthStateChanged(firebaseUser =>{



    if (user != null) {


      firebase.database().ref().child( firebaseUser.uid ).set( {
        /**store data**/
      } );

    console.log("Sign-in provider: "+ firebaseUser.providerId);
    console.log("Provider-specific UID: "+ firebaseUser.uid);
    console.log("name: "+firebaseUser.name);
    console.log("email: "+firebaseUser.email);
    console.log("country:"+firebaseUser.country);
     //console.log("  Photo URL: "+firebaseUser.photoURL);



    //window.location.href = "index.html";


     }else{
      console.log('not logged in');

     }
});

【问题讨论】:

    标签: javascript firebase firebase-realtime-database firebase-authentication


    【解决方案1】:

    您可以存储Firebase User 的任何属性。这应该有效:

    firebase.database().ref().child( firebaseUser.uid ).set( {
        firebaseUser.displayName,
        lastSignInTimestamp: Date.now()
    });
    

    如果这不起作用,您的用户可能无权写入数据库中的位置。要解决此问题,请附加一个错误侦听器:

    firebase.database().ref().child( firebaseUser.uid ).set( {
        firebaseUser.displayName,
        lastSignInTimestamp: Date.now()
    }.catch(function(error) {
        console.error(error);
    });
    

    如果确实是安全问题,请查看Firebase documentation about writing data to the database 中的第一个蓝色注释。

    【讨论】:

      猜你喜欢
      • 2021-11-23
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2021-01-06
      • 1970-01-01
      • 2020-06-05
      • 2019-05-18
      • 2018-06-25
      相关资源
      最近更新 更多