Maison  >  Questions et réponses  >  le corps du texte

Comment extraire les données utilisateur de Google OAuth et les stocker dans Firebase Firestore à l'aide de la méthode getRedirectResult ?

J'utilise l'authentification Firebase pour authentifier les utilisateurs de mon site Web avec deux méthodes : e-mail/mot de passe et connexion Google OAuth.

Chaque fois qu'un utilisateur s'inscrit via la méthode e-mail/mot de passe, j'utilise le code suivant pour enregistrer les informations qu'il a saisies dans le document Cloud Firestore :

createUserWithEmailAndPassword(auth, email, password)
        .then((userCredential) => {
            const user = userCredential.user;
            setDoc(doc(db,"accounts",user.uid), {
                user_id: user.uid,
                first_name: first_name,
                last_name: last_name,
                date_of_birth: dob,
                email: email,
                password: password,
                date_created: date
            })
        })
        .catch((error) => {
            //pass
        };

Cependant, je ne sais pas comment faire la même chose lorsqu'ils se connectent avec Google (j'utilise la méthode de redirection) : je souhaite extraire les données utilisateur de leur compte Google (généralement, juste leur nom, leur date de naissance et leur adresse Gmail). J'ai parcouru la documentation de la méthode getRedirectResult() mais je ne sais pas comment procéder.

J'ai besoin d'aide avec un code de base pour extraire ces données après leur inscription.

Merci pour toute aide car je deviens fou avec ça depuis deux jours.

P粉215292716P粉215292716180 Il y a quelques jours378

répondre à tous(1)je répondrai

  • P粉828463673

    P粉8284636732024-04-03 12:38:45

    Impossible d'obtenir des informations supplémentaires auprès du fournisseur OAuth dans onAuthStateChanged.

    Vous devez être connecté à votre fournisseur pour obtenir ces informations. Alors avant d'appeler Firebase. Les résultats du fournisseur contiennent la valeur de portée que vous avez demandée à l'étape 2 : https://firebase.google.com/docs/auth/web/google-signin#handle_the_sign-in_flow_with_the_firebase_sdk

    répondre
    0
  • Annulerrépondre