Swift – 如何处理FIRUserInfo的FB Auth的数据?

我刚刚启动了Firebase的新SDK

let facebookLogin = FBSDKLoginManager() facebookLogin.logInWithReadPermissions(["email"], fromViewController: self) { (facebookResult: FBSDKLoginManagerLoginResult!, facebookError: NSError!) in let credential = FIRFacebookAuthProvider.credentialWithAccessToken(FBSDKAccessToken.currentAccessToken().tokenString) FIRAuth.auth()?.signInWithCredential(credential) { (user, error) in 

之后,一边获取Facebook的信息,

我遇到了一个问题, 我怎样才能处理所有的人呢?

  var userData = ["id": FIRAuth.auth()?.currentUser?.uid as! AnyObject, // "accessToken": credential as! String, // "provider": user.provider!, "displayName": user?.providerData["displayName"], "email": user.providerData["email"] as! String, "profileImageURL": user.providerData["profileImageURL"] as! String, // "token": user.token as String, "createdAt": utcTimeZoneStr] 

您现在必须添加for …以检索providerData。

 if let user = FIRAuth.auth()?.currentUser { for profile in user.providerData { let providerId = profile.providerId let uid = profile.uid; // Provider-specific UID let name = profile.displayName let email = profile.email let photoUrl = profile.photoURL } } else { // No user is signed in. } 

以下是FirAuth(当前用户)的属性: https ://firebase.google.com/docs/reference/ios/firebaseauth/interface_f_i_r_user#properties