2017-04-20 4 views
0

Ich füge einen neuen Knoten in Firebase hinzu, der den Timestamp des Firebase-Servers als Knotennamen verwendet. Es stürzt ab und gibt diesen Fehler aus "Beenden der App aufgrund der nicht abgefangenen Ausnahme 'InvalidPathValidation', Grund: '(untergeordnet :) Muss eine nicht leere Zeichenfolge sein und nicht'. ' '#' '$' '[' oder ']' '". Hier ist mein CodeAbsturz beim Hinzufügen eines neuen Knotens in Firebase mithilfe von swift 3

let kFirebaseServerValueTimestamp = [".sv":"timestamp"] 
      let serverTimestamp = "sosLog" + String(describing: kFirebaseServerValueTimestamp) 
      FIRDatabase.database().reference().child(serverTimestamp).setValue(["residentUid":self.user_uid,"name":self.user_name, "timestamp": [".sv": "timestamp"], "status": "SOS" ]){ 

    } 

Hier ist meine DB-Struktur. Also ich möchte einen Knotennamen sosLog1234567456 genau wie Admin, BillingDate Node erstellen. enter image description here

Antwort

0

Firebase hat einige Schlüsseleinschränkungen. Erstellen Sie Ihre eigenen Schlüssel, die den folgenden Regeln entsprechen.

Wenn Sie Ihren eigenen Schlüssel zu erstellen, müssen sie UTF-8 kodiert sein, kann ein maximal 768 Bytes sein und kann nicht enthalten., $, #, [,],/Oder ASCII Steuerzeichen 0-31 oder 127.

+0

Ich habe Ihren Punkt, aber ich bekomme nicht, was ist falsch in meinem Code? – manku

Verwandte Themen