【发布时间】:2017-04-27 07:57:07
【问题描述】:
我为我的应用申请并获得了public_profile 和email 的批准。
点击login with Facebook 按钮后,我请求这两个权限:
let fbLoginManager = FBSDKLoginManager()
fbLoginManager.logIn(withReadPermissions: ["public_profile", "email"], from: self) { (result, error) in
成功登录流程后,我进入用户已通过身份验证的部分。 (也许我这样做太晚了,但不确定我应该在哪里尝试访问个人资料信息?)
override func viewDidLoad() {
super.viewDidLoad()
FIRAuth.auth()!.addStateDidChangeListener() { auth, user in
if let user = user {
FIRDatastore.shared.setUser(user: User(authData: user))
self.performSegue(withIdentifier: self.loginToList, sender: nil)
}
}
}
在这种情况下,user 对象属于 FIRUser 类类型。这应该包含公共配置文件信息。但是,我只看到 authData.providerData[0]
providerID、userID、displayName、photoURL 和 email。
正如here 解释的那样,我没有从 public_profile 中看到性别或其他任何内容。
请问我错过了什么?
【问题讨论】:
标签: javascript firebase firebase-authentication facebook-login