2016-08-30 46 views
0

我目前正在使用Firebase來管理我的用戶。我喜歡,我可以在我的用戶的相關信息,如電子郵件,photoUrl等存儲到Firebase檢索user.email與用戶ID

let user = FIRAuth.auth()?.currentUser 

user?.updateEmail("[email protected]") { error in 
    if let error = error { 
    // An error happened. 
    } else { 
    // Email upenter code heredated. 
    } 
} 

現在當然這僅適用於用戶當前的標誌性工作的想法,如果我想獲取其他用戶的相同信息通過使用另一個用戶ID我如何檢索這個。

+1

沒有內置的API來看看通過他們的UID提供用戶的信息。出於這個原因,大多數開發人員將用戶信息列表保存在另一個數據源(例如Firebase數據庫)中。請參閱http://stackoverflow.com/questions/28735377/where-does-firebase-save-its-simple-login-users –

+0

謝謝弗蘭克。 – pprevalon

回答

1

您可以在您的數據庫的JSON樹中創建一個「用戶」子項,並將每個用戶的用戶ID分開,您可以使用FIRAuth.auth()?.currentUser.uid獲得該用戶ID。

所以,你的JSON樹會是這個樣子:

"root" 
    "users" 
     "userID12345" 
      "email" 
      "photoURL" 

然後你可以拉在你的應用程序從火力地堡的數據通過調用:

FIRDatabase.database().reference().child("users").observeEventType(.Value, withBlock: { (snapshot) in 
//store the snapshot.value in a dictionary and read your data from there 
})