1
私はすべてのユーザーのために多くの投稿IDを保持するために "好き"のルートノードを持っています。しかし、facebookでログインした後、毎回ノードがユーザーからの削除/更新を好む。問題はありますか?どうすればこの事例を防ぎ、 "好きな"ルートノード以外を更新できますか?Firebaseで再度ログインした後にサブルートノードを削除しますか? - Swift
let accessToken = FBSDKAccessToken.currentAccessToken().tokenString
DataService.ds.REF_BASE.authWithOAuthProvider("facebook", token: accessToken, withCompletionBlock: {
error, authData in
if error != nil {
print("Login failed. \(error)")
}
else {
print("Successfully logged in with facebook. \(accessToken)")
print("Logged in! \(authData)")
let dateFormatter = NSDateFormatter()
dateFormatter.dateFormat = "MMMM dd, yyyy hh:mm"
let stringDate = dateFormatter.stringFromDate(NSDate())
print("createdAt: " + stringDate)
let user =
["id": authData.providerData["id"] as! String,
"accessToken": authData.providerData["accessToken"] as! String,
"provider": authData.provider!,
"displayName": authData.providerData["displayName"] as! String,
"email": authData.providerData["email"] as! String,
"profileImageURL": authData.providerData["profileImageURL"] as! String,
"token": authData.token as String,
"createdAt": stringDate]
DataService.ds.createFirebaseUser(authData.uid, user: user)
NSUserDefaults.standardUserDefaults().setValue(authData.uid, forKey: KEY_UID)
self.performSegueWithIdentifier(SEGUE_LOGGED_IN, sender: nil)
}
})
さらに、DataServiceクラスのcreateFirebaseUser関数。
func createFirebaseUser(uid: String, user: Dictionary<String, String>) {
REF_USERS.childByAppendingPath(uid).setValue(user)
}
私はそれを解決し、以下に公開しました。 – tobeiosdev