Ich habe "Likes" Root-Knoten, um viele Post-ID für jeden Benutzer zu halten. Aber nach dem Einloggen mit Facebook, jedes Mal mag Knoten Löschen/Aktualisieren von Benutzern. Gibt es ein Problem? Wie kann ich diesen Fall verhindern und aktualisieren außer "Likes" Root-Knoten?Sub Root-Knoten löschen nach dem Login wieder in 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)
}
})
Zusätzlich meine createFirebaseUser-Funktion in DataService-Klasse.
func createFirebaseUser(uid: String, user: Dictionary<String, String>) {
REF_USERS.childByAppendingPath(uid).setValue(user)
}
Ich habe es gelöst und unten veröffentlicht. – tobeiosdev