Как получить информацию о пользователе из электронной почты в firebase - PullRequest
0 голосов
/ 04 декабря 2018

Я использую bcryptjs и nodejs вместе с firebase и сталкиваюсь с проблемой при входе в систему.Информация о пользователе (вместе с хешированным паролем) сохраняется в базе данных Firebase (регистрация работает нормально), чтобы сравнить введенный пароль (пользователем) с сохраненным паролем, я использую метод ниже -

bcrypt.compare(req.user.password, user.password, function(err, res) {
   // res === true
});

ref: https://www.npmjs.com/package/bcryptjs

Мне нужна информация о пользователе из введенного адреса электронной почты, но я застрял здесь, не могу получить информацию о пользователе из firebase, так как информация о пользователе сопоставлена ​​с uid, а не с электронной почтой.

МожетЯ получаю информацию о пользователе из введенного пользователем адреса электронной почты (из firebase) или каким-либо другим способом аутентификации пользователя.

Спасибо.

1 Ответ

0 голосов
/ 05 декабря 2018

Поскольку вы пометили node.js: в доверенной среде вы можете использовать Firebase Admin SDK до для поиска пользователей по их электронной почте :

admin.auth().getUserByEmail(email)
  .then(function(userRecord) {
    // See the UserRecord reference doc for the contents of userRecord.
    console.log("Successfully fetched user data:", userRecord.toJSON());
  })
  .catch(function(error) {
    console.log("Error fetching user data:", error);
  });
...