2017-12-27 48 views
0

Ich verwende FirebaseAuth.createUserWithEmailAndPassword() für registrieren und FirebaseAuth.signInWithEmailAndPassword() für die Anmeldung.Firebase: wie Passwort abgeändert zu ändern?

Danach ist FirebaseAuth.getCurrentUser() nie null, nur nach doin a FirebaseAuth.signOut().

So lautet die Frage: Wie abzufangen, wenn Kontokennwort geändert wurde?

Antwort

0

firebaser hier

Firebase Authentifizierung kein Ereignis ausgelöst, wenn ein Benutzer sein Passwort ändert.

Sie können natürlich die meisten Änderungen abfangen, indem Sie die Auslösung eines Ereignisses in Ihren eigenen Anwendungscode einbetten. Aber das kann von Benutzern umgangen werden, die bereit sind, die Mühe zu geben.

So gibt es derzeit keine zuverlässige Möglichkeit zu erkennen, wenn ein Benutzer sein Passwort ändert. Ich würde Ihnen empfehlen, file a feature request, da diese oft helfen, das Team bestimmt Prioritäten.

+0

Vielen Dank, also was könnte ein Workaround sein? Kann ich das mit Firebase Functions abfangen und alle Geräte mit diesem Benutzer benachrichtigen, um sich zu melden? Denn wenn ich meine App auf einem Gerät starte, das bereits angemeldet ist, nachdem ich das Passwort geändert habe, weiß ich nicht, wie ich damit umgehen soll. Der Benutzer würde in einer Schwebe stecken, ohne zu wissen, warum er keine Daten empfängt, sondern die zwischengespeicherten . – 4face

+0

Es wurde kein Ereignis für eine Kennwortänderung ausgelöst, einschließlich [Cloud-Funktionen] (https://firebase.google.com/docs/functions/auth-events). Ich verstehe das Problem, das du beschreibst, nicht wirklich: Kannst du den [minimalen Code, der das Problem reproduziert] (http://stackoverflow.com/help/mcve) zeigen? –

+0

Entschuldigung für meine späte Antwort. Gestern habe ich nicht sehr gut erklärt: Angenommen, ich habe 2 Geräte, eines ist bei Firebase mit [email protected] geloggt, andere sind noch nicht angemeldet, also wähle ich mein Passwort zurück. Das erste Gerät funktioniert noch bis die Sitzung abläuft, dann bekomme ich: '(0.6.6-dev) [FirestoreCallCredentials]: Fehler beim Abrufen des Tokens: com.google.firebase.FirebaseException: Ein interner Fehler ist aufgetreten. [TOKEN_EXPIRIERT] ' und die App kann nur aus zwischengespeicherten Daten lesen. Ich möchte das am Anfang behandeln, wenn ich meine App starte, ohne die Ausnahme auf eine andere seltsame Art zu behandeln :) – 4face

Verwandte Themen