2016-05-23 8 views
0

Wenn ich mich bei einer Firebase App mit signInWithEmailAndPassword(email, password) anmelde, ist der Benutzer eingeloggt. Wenn ich die Seite neu lade, ist der Benutzer nicht mehr eingeloggt. Wenn ich auf eine andere Webseite mit gehe der gleiche Firebase apiKey und alles, der Benutzer ist immer noch nicht angemeldet. Wie würde ich gehen, um sicherzustellen, dass der Benutzer angemeldet bleibt, bis firebase.auth().signOut() aufgerufen wird?Firebase AUTH wird nicht eingeloggt bleiben

+0

Eine kurze Vermutung ist, dass Sie den Authentifizierungsstatus nicht überwachen (siehe [die Dokumentation dafür] (https://firebase.google.com/docs/auth/web/manage-users#get_the_currently_signed-in_user)). Wenn das nicht der Fall ist, teilen Sie uns bitte den [minimalen, vollständigen Code, mit dem wir Ihr Problem reproduzieren können] (http://stackoverflow.com/help/mcve). –

+0

@FrankvanPuffelen Es stellte sich heraus, dass ich nur versucht habe, 'firebase.auth(). CurrentUser' ohne den Zustandsänderungsmonitor zu erhalten. Ich habe deinen Ratschlag angenommen und es funktioniert jetzt. Vielen Dank! – HyperNeutrino

+0

Für wen auch immer abgestimmt, wie ist es off-topic? Bitte erläutern. – HyperNeutrino

Antwort

1

Die einfache Verwendung von firebase.auth().currentUser funktioniert normalerweise nicht, da Firebase normalerweise kein Benutzerkonto authentifiziert und verbunden hat, wenn dieses geladen ist. Warten Sie stattdessen auf die Änderung des Autorisierungsstatus unter Verwendung von firebase.auth().onAuthStateChanged(func), wobei func aufgerufen wird, wenn der Authentifizierungsstatus geändert wird (was zum Anmelden oder Abmelden oder zum Wechseln von Konten führen könnte).

Verwandte Themen