yan*_*grm 4 firebase firebase-authentication flutter
我有一个静态 AuthProvider 类,它集中所有身份验证。
我有以下注册码。
AuthResult newUser = await auth.createUserWithEmailAndPassword(
email: email, password: password);
if (newUser == null) {
print(
'AuthProvider: empty user is returned from createUserWithEmailAndPassword');
return false;
}
await newUser.user.sendEmailVerification();
return true;
Run Code Online (Sandbox Code Playgroud)
注册该应用程序后,我收到了一封验证电子邮件,因此我点击了它。当我下次尝试登录时,isEmailVerified 返回 false。经过一番研究,我认为我应该重新加载用户对象,如下所示:
FirebaseUser user = await auth.currentUser();
await user.reload();
user = await auth.currentUser();
print('${user.isEmailVerified}');
Run Code Online (Sandbox Code Playgroud)
不幸的是,isEmailVerified 仍然返回 false。有谁知道为什么会发生这种情况?
isEmailVerified直到下次为用户生成 ID 令牌时才会更新。
您有几种选择可以实现此目的:
isEmailVerified值的新 ID 令牌。getIdToken(true)用户,这会强制其刷新 ID 令牌,从而获取更新后的isEmailVerified值。| 归档时间: |
|
| 查看次数: |
906 次 |
| 最近记录: |