验证有效的Parse和Facebook会话,同时允许在没有Facebook的情况下注册

时间:2015-11-04 21:11:32

标签: ios facebook parse-platform

Parse's tutorial for integrating Facebook login绕过登录部分所述,您需要验证缓存用户是否存在以及该用户是否与Facebook关联,如果没有,则显示登录界面。这为允许在不使用Facebook的情况下创建帐户的应用程序提出了问题。因为该用户永远不会链接到Facebook,所以它将始终显示登录屏幕。但是如果你只检查用户是否被缓存,他们可能会从Facebook取消链接 - 实际上他们的会话不活跃。当发生这种情况时,你不会显示登录屏幕,请求将失败,我相信。 (或者这仅限于应用程序使用Facebook提出的请求 - 您是否仍然可以在这种情况下请求Parse用户?)

我的问题是,如何正确验证Parse用户是否有活动会话,如果他们的帐户绑定到Facebook也确保仍然有效,否则显示登录屏幕?

//TODO: How to make it work without a Facebook account
if PFUser.currentUser() == nil || !PFFacebookUtils.isLinkedWithUser(PFUser.currentUser()!) {
    //show login screen
}

一种解决方案可能是在User表中添加一个列,指示该用户是否是通过Facebook登录创建的。如果已设置,则验证帐户是否仍然链接,否则不会。我想知道是否有更好的方法来获得正确的行为。

1 个答案:

答案 0 :(得分:0)

我喜欢你的方法。我不知道你是否可以访问用户表中的authData。如果你这样做,那么只要检查一下就可以逃脱。