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
