Molte funzionalità di un'app non possono avvenire solo sul client, ma richiedono logica da eseguire in un ambiente sicuro e controllato: il server. Cloud Functions for Firebase è la soluzione serverless di Firebase che ti permette di eseguire codice backend (scritto in JavaScript/TypeScript, Python, Go, etc.) in risposta a eventi.
Cosa Significa "In Risposta a Eventi"? (Triggers)
Una Cloud Function non è sempre in esecuzione. "Dorme" finché non viene "svegliata" (innescata) da un evento. I trigger più comuni sono:
- HTTP Trigger: La funzione viene eseguita quando viene fatta una richiesta HTTP a un URL specifico. Questo è il modo in cui si creano le API REST.
- Authentication Trigger: La funzione si attiva quando un nuovo utente si registra (`onCreate`) o quando un utente viene eliminato (`onDelete`).
- Firestore Trigger: Si attiva quando un documento viene creato (`onCreate`), aggiornato (`onUpdate`) o eliminato (`onDelete`) in una specifica collezione di Firestore.
- Storage Trigger: Si attiva quando un file viene caricato o eliminato da Cloud Storage.
- Pub/Sub Trigger: Si attiva quando un messaggio viene pubblicato su un topic di Google Cloud Pub/Sub.
- Scheduled Trigger: La funzione viene eseguita a intervalli di tempo regolari (es. ogni notte a mezzanotte), come un cron job.
Esempi di Casi d'Uso
- Mandare un'email di benvenuto: Usando un Authentication Trigger `onCreate`, una funzione può inviare un'email di benvenuto personalizzata al nuovo utente.
- Creare una thumbnail per un'immagine: Usando uno Storage Trigger, quando un utente carica un'immagine, una funzione può creare automaticamente una versione a bassa risoluzione.
- Processare un pagamento: Un'app client fa una richiesta a un HTTP Trigger, che esegue la logica di pagamento sicura sul server interfacciandosi con Stripe.
- Aggregare dati: Usando un Firestore Trigger, ogni volta che viene creata una nuova recensione per un prodotto, una funzione può aggiornare il voto medio di quel prodotto.
- Pulizia notturna: Una Scheduled Function può essere eseguita ogni notte per eliminare gli account inattivi o i file temporanei.
Le Cloud Functions sono il "collante" dell'ecosistema Firebase. Ti permettono di aggiungere logica custom e di far interagire i diversi servizi Firebase tra loro, il tutto senza doverti preoccupare di affittare, configurare o scalare un singolo server.
Hai bisogno di una soluzione su misura?
Dalla Web App al gestionale custom, trasformiamo le tue idee in software performante. Contattaci per una consulenza gratuita.
Richiedi una consulenza