Introducció
L'autenticació amb xarxes socials permet als usuaris iniciar sessió a la teva aplicació utilitzant els seus comptes de xarxes socials com Google, Facebook, Twitter, entre d'altres. Firebase facilita la integració d'aquestes opcions d'autenticació, proporcionant una experiència d'usuari més fluida i reduint la fricció en el procés de registre i inici de sessió.
Configuració prèvia
Abans de començar, assegura't de tenir configurat el teu projecte de Firebase i haver seguit els passos bàsics d'autenticació. Si no ho has fet, revisa els temes anteriors del mòdul d'autenticació.
Autenticació amb Google
Pas 1: Configuració a la consola de Firebase
- Accedeix a la consola de Firebase.
- Selecciona el teu projecte.
- Navega a la secció "Authentication".
- Fes clic a la pestanya "Sign-in method".
- Activa el proveïdor de Google.
- Proporciona l'ID de client i el secret de client que pots obtenir des de la Google Developer Console.
Pas 2: Integració al codi
Exemple en JavaScript
// Importa Firebase import firebase from "firebase/app"; import "firebase/auth"; // Configura Firebase const firebaseConfig = { apiKey: "YOUR_API_KEY", authDomain: "YOUR_PROJECT_ID.firebaseapp.com", projectId: "YOUR_PROJECT_ID", storageBucket: "YOUR_PROJECT_ID.appspot.com", messagingSenderId: "YOUR_MESSAGING_SENDER_ID", appId: "YOUR_APP_ID" }; firebase.initializeApp(firebaseConfig); // Proveïdor de Google const provider = new firebase.auth.GoogleAuthProvider(); // Funció per iniciar sessió amb Google const signInWithGoogle = () => { firebase.auth().signInWithPopup(provider) .then((result) => { console.log(result.user); }) .catch((error) => { console.error(error); }); }; // Crida a la funció d'inici de sessió signInWithGoogle();
Pas 3: Prova l'autenticació
- Desplega la teva aplicació.
- Fes clic al botó d'inici de sessió amb Google.
- Segueix les instruccions per iniciar sessió amb el teu compte de Google.
Autenticació amb Facebook
Pas 1: Configuració a la consola de Firebase
- Accedeix a la consola de Firebase.
- Selecciona el teu projecte.
- Navega a la secció "Authentication".
- Fes clic a la pestanya "Sign-in method".
- Activa el proveïdor de Facebook.
- Proporciona l'ID de l'aplicació i el secret de l'aplicació que pots obtenir des de la Facebook Developer Console.
Pas 2: Integració al codi
Exemple en JavaScript
// Importa Firebase import firebase from "firebase/app"; import "firebase/auth"; // Configura Firebase const firebaseConfig = { apiKey: "YOUR_API_KEY", authDomain: "YOUR_PROJECT_ID.firebaseapp.com", projectId: "YOUR_PROJECT_ID", storageBucket: "YOUR_PROJECT_ID.appspot.com", messagingSenderId: "YOUR_MESSAGING_SENDER_ID", appId: "YOUR_APP_ID" }; firebase.initializeApp(firebaseConfig); // Proveïdor de Facebook const provider = new firebase.auth.FacebookAuthProvider(); // Funció per iniciar sessió amb Facebook const signInWithFacebook = () => { firebase.auth().signInWithPopup(provider) .then((result) => { console.log(result.user); }) .catch((error) => { console.error(error); }); }; // Crida a la funció d'inici de sessió signInWithFacebook();
Pas 3: Prova l'autenticació
- Desplega la teva aplicació.
- Fes clic al botó d'inici de sessió amb Facebook.
- Segueix les instruccions per iniciar sessió amb el teu compte de Facebook.
Autenticació amb Twitter
Pas 1: Configuració a la consola de Firebase
- Accedeix a la consola de Firebase.
- Selecciona el teu projecte.
- Navega a la secció "Authentication".
- Fes clic a la pestanya "Sign-in method".
- Activa el proveïdor de Twitter.
- Proporciona la clau de l'API i el secret de l'API que pots obtenir des de la Twitter Developer Console.
Pas 2: Integració al codi
Exemple en JavaScript
// Importa Firebase import firebase from "firebase/app"; import "firebase/auth"; // Configura Firebase const firebaseConfig = { apiKey: "YOUR_API_KEY", authDomain: "YOUR_PROJECT_ID.firebaseapp.com", projectId: "YOUR_PROJECT_ID", storageBucket: "YOUR_PROJECT_ID.appspot.com", messagingSenderId: "YOUR_MESSAGING_SENDER_ID", appId: "YOUR_APP_ID" }; firebase.initializeApp(firebaseConfig); // Proveïdor de Twitter const provider = new firebase.auth.TwitterAuthProvider(); // Funció per iniciar sessió amb Twitter const signInWithTwitter = () => { firebase.auth().signInWithPopup(provider) .then((result) => { console.log(result.user); }) .catch((error) => { console.error(error); }); }; // Crida a la funció d'inici de sessió signInWithTwitter();
Pas 3: Prova l'autenticació
- Desplega la teva aplicació.
- Fes clic al botó d'inici de sessió amb Twitter.
- Segueix les instruccions per iniciar sessió amb el teu compte de Twitter.
Exercicis pràctics
- Implementa l'autenticació amb Google a la teva aplicació.
- Implementa l'autenticació amb Facebook a la teva aplicació.
- Implementa l'autenticació amb Twitter a la teva aplicació.
- Prova cada mètode d'autenticació i assegura't que els usuaris poden iniciar sessió correctament.
Solucions
Solució per a l'exercici 1
// Proveïdor de Google const provider = new firebase.auth.GoogleAuthProvider(); // Funció per iniciar sessió amb Google const signInWithGoogle = () => { firebase.auth().signInWithPopup(provider) .then((result) => { console.log(result.user); }) .catch((error) => { console.error(error); }); }; // Crida a la funció d'inici de sessió signInWithGoogle();
Solució per a l'exercici 2
// Proveïdor de Facebook const provider = new firebase.auth.FacebookAuthProvider(); // Funció per iniciar sessió amb Facebook const signInWithFacebook = () => { firebase.auth().signInWithPopup(provider) .then((result) => { console.log(result.user); }) .catch((error) => { console.error(error); }); }; // Crida a la funció d'inici de sessió signInWithFacebook();
Solució per a l'exercici 3
// Proveïdor de Twitter const provider = new firebase.auth.TwitterAuthProvider(); // Funció per iniciar sessió amb Twitter const signInWithTwitter = () => { firebase.auth().signInWithPopup(provider) .then((result) => { console.log(result.user); }) .catch((error) => { console.error(error); }); }; // Crida a la funció d'inici de sessió signInWithTwitter();
Conclusió
L'autenticació amb xarxes socials és una eina poderosa per millorar l'experiència d'usuari a la teva aplicació. Firebase facilita la integració amb proveïdors populars com Google, Facebook i Twitter. Amb els exemples i exercicis proporcionats, hauràs après a configurar i implementar aquests mètodes d'autenticació a la teva aplicació. En el següent tema, explorarem com gestionar els usuaris autenticats.
Curs de Firebase
Mòdul 1: Introducció a Firebase
Mòdul 2: Autenticació de Firebase
- Introducció a l'autenticació de Firebase
- Autenticació amb correu electrònic i contrasenya
- Autenticació amb xarxes socials
- Gestió d'usuaris
Mòdul 3: Base de dades en temps real de Firebase
- Introducció a la base de dades en temps real
- Lectura i escriptura de dades
- Estructura de dades i regles de seguretat
- Capacitats fora de línia
Mòdul 4: Cloud Firestore
- Introducció a Cloud Firestore
- Model de dades de Firestore
- Operacions CRUD
- Consultes avançades
- Regles de seguretat
Mòdul 5: Emmagatzematge de Firebase
- Introducció a l'emmagatzematge de Firebase
- Carregar fitxers
- Descarregar fitxers
- Metadades de fitxers i seguretat
Mòdul 6: Missatgeria en el núvol de Firebase
- Introducció a la missatgeria en el núvol
- Enviar notificacions
- Gestionar notificacions
- Funcions avançades de missatgeria
Mòdul 7: Analítica de Firebase
Mòdul 8: Funcions de Firebase
Mòdul 9: Monitoratge del rendiment de Firebase
- Introducció al monitoratge del rendiment
- Configuració del monitoratge del rendiment
- Analitzar dades de rendiment