用户在使用PFFacebookUtils登录时取消选择Facebook权限

时间:2015-12-17 09:43:28

标签: swift parse-platform pffacebookutils

我一直在搜索并尝试使用PFFacebookUtilsParse来解决此问题,用户通过Facebook登录但未在Parse Data Browser中保存。在此过程中,用户取消选择权限(例如,电子邮件),这会导致解析数据浏览器中的空用户

我已更改此流程并添加了一些检查:

  • 检查是否给出了权限,如果没有,则重新请求 允许。
  • 每次创建新的PFUser时,如果权限是 没有给出,然后过程重新开始,我删除旧的PFUser (因此创建了一个新的)。
  • 检查所有权限并准备好数据时 保存到解析失败,用户对象显示 Parse中没有任何信息。

任何人都有类似的经历吗?使用Facebook登录时,在数据浏览器中清空PFUser数据?

使用PFFacebookUtils.logInWithPermissions

1 个答案:

答案 0 :(得分:0)

可能会发生这种情况,但您可以通过在Cloud上进行检查来阻止在Parse User类中创建用户。在您的用户类beforesave触发器中,您可以通过查看request.object.get("authData")轻松检测正在注册的用户是否是Facebook用户。然后,您可以使用访问令牌(request.object.get("authData").facebook.access_token)来调用图API,并检查您的用户是否已授予您所需的所有权限:

https://graph.facebook.com/me/permissions&access_token=xxx

如果没有,则通过返回response.error()来拒绝用户记录。