Firebase - 自定义重置密码登录页面

时间:2016-06-20 22:45:02

标签: firebase firebase-authentication

我可以在Firebase中自定义密码重置的登录页面吗?我想本地化该页面,因为我的应用程序不是英文版。有没有办法这样做?

提前致谢。

2 个答案:

答案 0 :(得分:34)

您可以在Firebase Console -> Auth -> Email Templates -> Password Reset下自定义密码重置电子邮件,并将电子邮件中的链接更改为指向您自己的页面。请注意,<code>占位符将替换为网址中的密码重置代码。

然后,在您的自定义页面中,您可以从URL中读取密码重置代码并执行

firebase.auth().confirmPasswordReset(code, newPassword)
    .then(function() {
      // Success
    })
    .catch(function() {
      // Invalid code
    })

您可以选择在使用

显示密码重置表单之前先检查代码是否有效
firebase.auth().verifyPasswordResetCode(code)
    .then(function(email) {
      // Display a "new password" form with the user's email address
    })
    .catch(function() {
      // Invalid code
    })

https://firebase.google.com/docs/reference/js/firebase.auth.Auth#confirmPasswordReset https://firebase.google.com/docs/reference/js/firebase.auth.Auth#verifyPasswordResetCode

答案 1 :(得分:0)

@Channing Huang 提供的答案是正确答案,但您还需要记住,它返回的错误并不总是invalid-code

检查错误是否可能已过期,因为用户直到后来才打开 URL,或者可能是其他情况。如果过期,您可以再发送一封电子邮件。