我可以在Firebase中自定义密码重置的登录页面吗?我想本地化该页面,因为我的应用程序不是英文版。有没有办法这样做?
提前致谢。
答案 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,或者可能是其他情况。如果过期,您可以再发送一封电子邮件。