man*_*dos 4 firebase-authentication
这是我用来发送验证电子邮件的代码(摘自官方文档)
var user = firebase.auth().currentUser;
user.sendEmailVerification().then(function() {
// Email sent.
}).catch(function(error) {
// An error happened.
});
Run Code Online (Sandbox Code Playgroud)
User对象具有emailVerified属性。用户单击邮件中的链接时,它不会更改。它仅在重新登录时更新。应用程序可以通过某种方式知道用户已成功验证其地址吗?
在这里放火
当用户单击验证链接时,不会触发任何客户端回调。
我们已经看到一个功能请求,当用户验证其电子邮件地址时会触发Cloud Functions,但是没有关于是否/何时发送更新。(另请参见:Firebase的云功能-已验证对电子邮件的操作)
我现在能想到的最好的方法是User.reload()偶尔调用以获取更新的属性。
您可以在发送电子邮件验证时添加 continueUrl 以重定向回您的应用程序:https ://firebase.google.com/docs/auth/web/passing-state-in-email-actions
var actionCodeSettings = {
url: 'https://www.example.com/?email=' +
firebase.auth().currentUser.email
};
firebase.auth().currentUser.sendEmailVerification(actionCodeSettings)
.then(function() {
// Verification email sent.
});
Run Code Online (Sandbox Code Playgroud)
验证后将显示继续按钮。您可以使用它返回到应用程序或某个页面,您可以在其中通过实时数据库通知原始页面进行验证。
| 归档时间: |
|
| 查看次数: |
1378 次 |
| 最近记录: |