首页 > 解决方案 > 如何验证当前 FirebaseUser 是否存在?

问题描述

我该如何验证FirebaseAuth.instance.currentUser()Firebase 身份验证(服务器端)中仍然存在?

我在 Firebase 控制台中删除了用户,但是FirebaseAuth.instance.currentUser仍然返回了一个用户。

那么,如何检查它(await FirebaseAuth.instance.currentUser()).uid是否仍在 Firebase 控制台的身份验证列表中?

标签: firebaseflutterfirebase-authentication

解决方案


可以使用的reload方法FirebaseUser

final FirebaseUser firebaseUser = await FirebaseAuth.instance.currentUser();
await firebaseUser.reload();

// This should print `true` if the user is deleted in the Firebase Console.
print(await FirebaseAuth.instance.currentUser() == null);

如果您的用户在 Firebase 控制台中被删除(或禁用)并且您reload在 Flutter 中调用该用户,则下次调用时currentUser,它应该返回 null,即此设备上没有用户经过身份验证。


推荐阅读