Parse SDK和Facebook SDK在iOS上的集成非常简单,效果很好,但我必须为Facebook取得很多,我想知道Parse是否会自动获取这些信息,或者我是否必须将它们上传到Parse by自己?
基本上,我使用以下方式登录/登录Facebook:
PFFacebookUtils.logInInBackgroundWithReadPermissions(FacebookSettings.readPermissions) {
(user: PFUser?, error: NSError?) -> Void in
if let user = user {
if user.isNew {
print("User signed up and logged in through Facebook!")
} else {
print("User logged in through Facebook!")
}
} else {
print("Uh oh. The user cancelled the Facebook login.")
}
self.performSegueWithIdentifier("MainSegue", sender: nil)
}
我正在使用PFFacebookUtils
,所以当我切换到Parse时,我可以看到用户下我有信息,它是由Parse自动提取的。
如果我传递复杂的读取权限数组会发生什么,例如。 user_actions.fitness
,user_education_history
等?
Will Parse会自动获取那些吗?
答案 0 :(得分:2)
不,Parse不会在身份验证数据之外自动从Facebook获取任何数据。阅读权限仅授予您使用FB Graph API或iOS SDK请求和阅读该用户信息的权限。
如果您想存储或更新用户信息,例如他们的姓名,个人资料图片,朋友列表等,您可以使用FB的API及其ID(在用户内自动保存到authData)来请求此信息)。
您还可以考虑使用FBRequest.requestForMe()来简化此步骤。
至于您的特定读取权限,您需要在尝试提取该信息之前请求这些权限。您可能希望使用PFFacebookUtils.logInWithPermissions
,这样您就可以指定需要访问的数组中的所有内容。