0

Wie identifiziert man die ID (vom Push) des vorhandenen Benutzers? Ich habe einen Knoten mit Push erstellt, wenn ein Benutzer registriert ist, aber wenn der Benutzer versucht, sich erneut anzumelden, weiß ich nicht, wie ich es direkt identifizieren kann, weil es ein anderer Schlüssel ist.So identifizieren Sie bestehende Benutzeranmeldung Firebase?

Ist es falsch, push anstelle der Authentifizierungs-ID als meinen Knoten zu verwenden? Weil ich die Daten abrufen möchte, die ich für diesen Benutzer in meiner DB aufbewahrt habe.

Antwort

1

Sie fragen: Ist es falsch, push anstelle der Authentifizierungs-ID als mein Knoten zu verwenden? Die Antwort ist fast sicher, ja. Die Dokumentation für FirebaseUser.getUid() Zustände:

Gibt eine Zeichenfolge zur eindeutigen Benutzer in Ihrem Firebase Projekt Benutzerdatenbank zu identifizieren. Verwenden Sie es, wenn Informationen in Firebase Datenbank oder Speicher speichern, oder sogar in Ihrem eigenen Backend-

Die Fertigstellung des Codes in Ihrem Beitrag wäre so etwas wie:

if (user != null) { 
     DatabaseReference ref = FirebaseDatabase.getInstance() 
       .getReference("users").child(user.getUid()); 

     ref.addListenerForSingleValueEvent(...); 
    } 
+0

oh ich sehe, meine schlechte dann, ich lese oft Leute schreiben Verwendung drücken, um Primärschlüssel zu erstellen, ohne weitere Überlegung ich benutze es als meine Benutzer-ID. –

+0

Denken Sie, das ist die richtige Antwort. Würdest du es nicht als richtig bezeichnen? –

+0

@Goofy_Phie Verwenden eines Schlüssels, der von 'push()' generiert wird, ist ein guter Ansatz für Sammlungen, bei denen die Elemente keinen natürlichen Schlüssel haben, z. B. für Blogposts oder wenn Sie den Benutzer anmelden, wenn er sich anmeldet Bei Elementen mit einem natürlichen Schlüssel (z. B. der UID eines Benutzers) empfiehlt es sich, diese Elemente als Schlüssel in der Sammlung zu verwenden. –

0

Sie müssen eine andere eindeutige Kennung wie Google eindeutige ID oder die E-Mail-Adresse verwenden. Da Firebase . im Knoten nicht akzeptiert, müssen Sie eine Methode zum Ändern der E-Mail-Adresse von [email protected] in [email protected],com verwenden. In diesem Fall wird [email protected],com Ihre eindeutige Kennung sein. Ich hoffe es hilft.

+0

Dank, aber es ist nicht, dass ich wollte –

Verwandte Themen