【问题标题】:How can I get the user profile and name from Firebase?如何从 Firebase 获取用户个人资料和名称?
【发布时间】:2020-10-13 07:33:15
【问题描述】:

我的代码只显示undefined。我希望它显示用户名、个人资料图片和用户电子邮件。提前感谢您的帮助。

var firebaseConfig = {
  //My Configuration
};
firebase.initializeApp(firebaseConfig);

var mainUser = firebase.auth().currentUser;
var userNameId, userEmailId, photoUrl, uid, emailVerified;

if (mainUser != null) {
  userNameId = user.displayName;
  userEmailId = user.email;
  photoUrl = user.photoURL;
  emailVerified = user.emailVerified;
  uid = user.uid; // The user's ID, unique to the Firebase project. Do NOT use
  // this value to authenticate with your backend server, if
  // you have one. Use User.getToken() instead.
}
document.write(userNameId);
document.write(userEmailId);
document.write(photoUrl);
document.write(emailVerified);
document.write(uid);

【问题讨论】:

  • 您好,欢迎来到 StackOverflow。为了增加您收到对您的查询的积极回复的机会,请阅读并考虑本网站how to ask 部分中提出的要点。
  • 这能回答你的问题吗? Getting user name, lastname and ID in Firebase
  • 不,兄弟,这是我为网站工作的应用程序
  • 如果我忽略了某些内容,请原谅我,但是当 user 未定义时,您希望 userNameId = user.displayName; 做什么?

标签: javascript jquery firebase


【解决方案1】:

您的用户变量未定义。将 mainUser 改为 user:

var firebaseConfig = {
  apiKey: "AIzaSyCfX0ye2p4W8Jq2Za3H0_nRpgtFAlGxFxA",
  authDomain: "trendy-cart-79671.firebaseapp.com",
  databaseURL: "https://trendy-cart-79671.firebaseio.com",
  projectId: "trendy-cart-79671",
  storageBucket: "trendy-cart-79671.appspot.com",
  messagingSenderId: "563099031291",
  appId: "1:563099031291:web:1fe8d3c43e2dfd8429425e"
};
firebase.initializeApp(firebaseConfig);

var user = firebase.auth().currentUser;
var userNameId, userEmailId, photoUrl, uid, emailVerified;

if (user != null) {
  userNameId = user.displayName;
  userEmailId = user.email;
  photoUrl = user.photoURL;
  emailVerified = user.emailVerified;
  uid = user.uid; // The user's ID, unique to the Firebase project. Do NOT use
  // this value to authenticate with your backend server, if
  // you have one. Use User.getToken() instead.
}
document.write(userNameId);
document.write(userEmailId);
document.write(photoUrl);
document.write(emailVerified);
document.write(uid);

【讨论】:

  • 它也没有工作,兄弟
  • 在执行此代码之前,您是否使用身份验证提供程序登录? - firebase.auth().signInWithPopup(new firebase.auth.GoogleAuthProvider())
  • 是的,我已通过身份验证提供商登录
  • 在这种情况下,如果您在浏览器控制台中执行此操作,它会说什么:console.log(firebase.auth().currentUser);
猜你喜欢
  • 2018-09-26
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2016-07-29
  • 2014-01-04
  • 2016-04-29
相关资源
最近更新 更多