0

Ich verwende Firebase, um Benutzer über eine Facebook-Weiterleitung zu authentifizieren. Das Problem, das ich in laufen lasse, ist, dass ich unterschiedliche Antworten von der Authentifizierung direkt nach den Redirect Versen bin immer, wenn jemand bereits angemeldet ist.Firebase-Authentifizierung mit Facebook Redirect-Methode (andere Ergebnisse von Redirect versus bereits eingeloggt)

let provider = new firebase.auth.FacebookAuthProvider(); 
provider.addScope('user_friends'); 
this.FIREAUTH.signInWithRedirect(provider); 

I Winkel Feuer bin mit den Daten zu zeichnen und diese Funktion gibt mir verschiedene Antworten. Meine Frage ist, warum sind sie anders und was kann ich nach der Weiterleitung tun, um das Login zu beenden? Firebase scheint nicht zu sehen, dass ich nach der Weiterleitung angemeldet bin.

authSubscribe(reader) { 
    this.af.auth.subscribe(data => { 
    if (data && data.uid) {this.uid = data.uid;} 
    console.log('authentication subscribe: ', data); 
    reader(data); 
    }); 
} 

nach Redirect after redirect

auf Refresh, wenn bereits angemeldet on refresh when already logged in

Antwort

0

Einige Fehler hier:

authSubscribe(reader) { 
    this.af.auth.subscribe(data => { 
     if (data && data.uid) {this.uid = data.uid;} 
     console.log('authentication subscribe: ', data); 
     reader(data); 
    }); 
} 

Wenn Sie die Konsole überprüfen, sollte es so aussehen:

authSubscribe(reader) { 
    this.af.auth.subscribe(data => { 
     if (data && data.auth.uid) {this.uid = data.auth.uid;} 
     console.log('authentication subscribe: ', data); 
     reader(data); 
    }); 
} 

data.auth.uid, nicht data.uid. auth ist ein Objekt

+0

hey danke für den Versuch, zu helfen, Firebase gibt die UID außerhalb der Auth-Objekt auch. Entschuldigung, ich hatte das nicht in meinem Screenshot! Mein Problem ist, dass das facebook-Objekt in verschiedenen Phasen der Authentifizierung unterschiedliche Werte zurückgibt. – jaruesink

Verwandte Themen