Как создать пользовательское подтверждение регистрации Firebase / подтверждение / сброс по электронной почте

Это сводит меня с ума. Я не могу использовать систему электронной почты Firebase, чтобы уведомить пользователя об электронном письме с подтверждением учетной записи, сбросе электронной почты или изменении электронной почты, потому что я не могу изменить язык или шаблон. Поэтому я начал использовать Sparkpost. Я уже собрал большую часть его функциональных возможностей, но обнаружил, что не могу получить код подтверждения для этих действий.

Есть ли способ использовать какие-либо из этих функций без использования системы электронной почты? Могу ли я каким-либо образом получить "код", необходимый для выполнения:

[confirmPasswordReset(code, newPassword)][3]
[checkActionCode(code)][2]
[applyActionCode(code)][1]

Если бы я мог каким-либо образом получить этот код, я мог бы использовать сочетание почтовой системы sparkpost и угловой страницы для проверки пользователя или изменения пароля в моем ионном приложении. Или я мог бы сделать конечную точку узла для выполнения этих операций.

Я действительно нуждаюсь в помощи.

1 ответ

Решение

Вы не можете получить код подтверждения через общедоступный API.

Но вы можете проверить учетные записи пользователей в коде на стороне сервера напрямую (без вызова checkActionCode/applyActionCode) с помощью Firebase Admin SDK для Node.js.

Из документации по обновлению пользователя:

updateUser() Метод позволяет изменять данные существующего пользователя. Он принимает uid для пользователя, чтобы обновить, а также объект, содержащий UserRecord Свойства для обновления:

admin.auth().updateUser(uid, {
  email: "modifiedUser@example.com",
  emailVerified: true,
  password: "newPassword",
  displayName: "Jane Doe",
  photoURL: "http://www.example.com/12345678/photo.png",
  disabled: true
})
  .then(function(userRecord) {
    console.log("Successfully updated user", userRecord.toJSON());
  })
  .catch(function(error) {
    console.log("Error updating user:", error);
  });

При этом вы можете создать свой собственный механизм проверки, а затем просто обновить статус пользователя, как только вы закончите.

Другие вопросы по тегам