Firebase Facebook登录检查用户是不是存在
Posted
技术标签:
【中文标题】Firebase Facebook登录检查用户是不是存在【英文标题】:Firebase Facebook login check if user existFirebase Facebook登录检查用户是否存在 【发布时间】:2016-07-18 11:03:43 【问题描述】:我有一个与 firebase 配合使用的 facebook 登录系统,但我想检查我的 firebase 上是否存在用户(我不想添加它,只是想确保他是否存在,因为我想将用户重定向到另一个页面以完成其个人资料,一旦完成,我会将其发送到 firebase)。
我只需要检查用户是否存在于我的数据库中。这是我尝试的代码,但它返回 nil 错误并自动将用户添加到 firebase。
let credential = FIRFacebookAuthProvider.credentialWithAccessToken(FBSDKAccessToken.currentAccessToken().tokenString)
FIRAuth.auth()?.signInWithCredential(credential) (user, error) in
// ...
【问题讨论】:
用重新认证方法检查... 你能给我一个链接或者关于那个方法的东西吗?因为我在 firebase 网站上找不到它。 你确定...检查this link ..在本页末尾您找到了重新验证方法 非常感谢。它奏效了。 【参考方案1】:您可以使用reauthenticateWithCredential
方法检查用户是否存在。
检查this Doc.,部分 -> 重新验证用户
let user = FIRAuth.auth()?.currentUser
var credential: FIRAuthCredential
// Prompt the user to re-provide their sign-in credentials
user?.reauthenticateWithCredential(credential) error in
if let error = error
// An error happened.
else
// User re-authenticated.
如果用户重新认证成功,则表示用户存在...
【讨论】:
主要问题是当用户有一个帐户但他删除应用程序然后重新安装它时,此代码将不起作用,因为 .当前用户为零。如果对象存在,更好的方法是检查 .reference().child("users/currentUserId")(或存储登录用户数据的位置) @ConstantinSaulenco 然后我们需要将检查用户的代码移动到服务器端,因为我们不希望任何人都可以看到用户数据以上是关于Firebase Facebook登录检查用户是不是存在的主要内容,如果未能解决你的问题,请参考以下文章
如何确定 Firebase 用户是不是使用 facebook 身份验证登录
如何确定 Firebase 用户是不是使用 facebook 身份验证登录