2

Ich entwickle mobile erste App, mit Firebase Auth. Firebase empfiehlt Redirect statt Popup. Ich kann jedoch kein Beispiel finden, wie Fehler bei der Verwendung von Oauth-Anbietern (Facebook, Google) angezeigt werden. Firebase hat ein Beispiel für Bedienungsfehler in SignwithPopup, aber Vordergrund umleiten es nur heißt:Wie Ablenkungsfehler mit Firebase Auth abrufen und behandeln?

Dieser Fehler wird in ähnlicher Weise in dem Umleitungs-Modus, mit dem Unterschied behandelt, die die anstehende Credential zwischen Seite zwischengespeichert werden muss leitet um (zum Beispiel mit Sitzungsspeicher).

+0

Haben Sie etwas versucht? Wenn ja, zeige den minimalen Code wo du feststeckst. –

+0

Zur Inspiration: https://github.com/firebase/quickstart-js/blob/master/auth/facebook-redirect.html –

Antwort

3

Wir zeigen, wo Fehler zu tun, für im vorhergehenden Abschnitt der gleichen doc Umleitung Operation Handhabung: Nur für die Suche in this page speziell im catch hier "firebase.auth() getRedirectResult().":

firebase.auth().getRedirectResult().then(function(result) { 
    if (result.credential) { 
    // This gives you a Google Access Token. You can use it to access the Google API. 
    var token = result.credential.accessToken; 
    // ... 
    } 
    // The signed-in user info. 
    var user = result.user; 
}).catch(function(error) { 
    // Handle Errors here. 
    var errorCode = error.code; 
    var errorMessage = error.message; 
    // The email of the user's account used. 
    var email = error.email; 
    // The firebase.auth.AuthCredential type that was used. 
    var credential = error.credential; 
    // ... 
}); 

Übrigens ist das Hinzufügen von mehreren Auth-Providern und das Verarbeiten von Verbindungskonten eigentlich ziemlich schwierig, da viele Sub-Flows berücksichtigt werden müssen (z. B. wenn der Benutzer eine Verbindung herstellen möchte, aber dann ein Konto anmeldet) Emails stimmen nicht überein...). Ich empfehle Ihnen, Firebase UI zu verwenden, die eine konfigurierbare UI-Komponente zur Verfügung stellt, die alle diese heiklen Flüsse für Sie behandelt.