Firebase Extensions
Firebase Extensions ti aiuta a eseguire rapidamente il deployment delle funzionalità nella tua app con soluzioni preconfigurate.
Una volta installata, un'Firebase Extension esegue un'attività o un insieme di attività specifiche in risposta a richieste HTTPS, eventi Cloud Scheduler o eventi di attivazione da altri prodotti Firebase, come Cloud Firestore o Firebase Cloud Messaging.
Esplora Extensions Hub Scopri come installare un'estensione Scopri come creare la tua estensione
Funzionalità chiave
| Riduci il tempo dedicato a sviluppo, manutenzione e crescita | Poiché un'estensione è una soluzione preconfigurata, devi solo installarla e configurarla. Con le estensioni, non devi perdere tempo a cercare, scrivere ed eseguire il debug del codice che implementa la funzionalità o automatizza un'attività per la tua app o il tuo progetto. Esplora Extensions Hub per trovare soluzioni per la tua app o progetto. |
| Concepita per essere configurabile e riutilizzabile | Ogni istanza installata di un'estensione è unica. Specifichi i valori di configurazione per l'estensione che sono univoci per la tua app, il tuo progetto o il tuo caso d'uso. A seconda di cosa fa l'estensione, questi valori possono essere quasi qualsiasi cosa: un percorso Cloud Firestore, le dimensioni dell'immagine o un URL GitHub. Puoi riutilizzare la stessa estensione in progetti diversi. Puoi anche installare più istanze della stessa estensione in un singolo progetto. Ogni istanza installata può avere la propria configurazione personalizzata. |
| Integrazione della piattaforma Firebase | Le estensioni possono colmare la lacuna della tua architettura esistente architettura. Le estensioni possono rispondere agli eventi generati dai prodotti Firebase che utilizzi già nella tua app. Una modifica in un prodotto Firebase può attivare un'estensione per eseguire la sua attività, anche un' attività che utilizza un altro prodotto. Ad esempio, una scrittura specifica Realtime Database può attivare l'invio di una nuova Firebase Cloud Messaging notifica. Un'estensione può anche integrare il tuo progetto Firebase con altri prodotti Google Cloud (come BigQuery e Google Traduttore) o anche servizi di terze parti (come Mailchimp e Bit.ly). Gli eventi di attivazione non sono limitati agli eventi Firebase; puoi anche attivare un'estensione direttamente con una richiesta HTTPS o a intervalli pianificati. |
| Sicurezza e accesso limitato | La logica dell'applicazione per le estensioni viene eseguita sul backend, utilizzando Google Cloud Functions, quindi il codice è completamente isolato dal client. Inoltre, le estensioni stesse sono isolate dal resto del progetto perché a un'estensione installata viene concesso accesso limitato solo alle risorse e ai dati chiaramente elencati prima dell' installazione. |
| Nessuna manutenzione | Installa e configura un'estensione per il tuo progetto Firebase. Dopodiché, il backend esegue automaticamente lo scale up e lo scale down delle risorse di computing in base alle esigenze dell'estensione. Non devi mai preoccuparti di credenziali, configurazione del server, provisioning nuovi server o disattivazione di quelli precedenti. |
Come funziona?
Fondamentalmente, un Firebase Extension è un codice che esegue un'attività ogni volta che si verifica un evento definito in modo specifico nella tua app o nel tuo progetto.
La logica di un'estensione viene scritta utilizzando Cloud Functions for Firebase. Le funzioni di un'estensione definiscono i provider di eventi e le condizioni che attivano l'esecuzione (ad esempio, una Cloud Firestore scrittura, una richiesta HTTPS o un Cloud Scheduler evento).
Anche se le estensioni utilizzano le funzioni, una caratteristica distintiva fondamentale tra estensioni e funzioni è che un'estensione si basa su un file di specifica extension.yaml, che definisce esplicitamente:
- I servizi Google (API) che l'estensione utilizzerà
- I ruoli di accesso richiesti dall' estensione per funzionare
- Le risorse specifiche dell'estensione richieste dall' estensione per funzionare
- I parametri configurabili per l'estensione
Puoi installare un'estensione in un progetto più volte, con ogni istanza installata con una configurazione diversa.
Quando installi un'istanza di un'estensione, Firebase esegue le seguenti operazioni:
- Ti chiede di specificare i valori di configurazione (parametri) richiesti da utilizzare per questa istanza dell'estensione.
- Abilita le API elencate nel file
extension.yamlper il progetto. - Crea un nuovo account di servizio da utilizzare per questa istanza dell'estensione e gli assegna i ruoli di accesso elencati. L'istanza dell'estensione esegue il codice utilizzando l'accesso concesso a questo account di servizio.
- Esegue il provisioning delle risorse elencate risorse per l'istanza dell'estensione (ad esempio, una funzione).
Tieni presente che ogni istanza installata di un'estensione ha il proprio account di servizio e le risorse di cui è stato eseguito il provisioning individualmente.
Oltre al file extension.yaml, la
directory dell'estensione
include anche file di istruzioni, come README, che contengono informazioni
utili per completare ulteriori attività di configurazione o utilizzare l'estensione in generale.
Dopo l'installazione, puoi riconfigurare un' estensione (specificare nuovi valori parametro) e aggiornarla a una versione più recente. Puoi anche disinstallare un'estensione dal tuo progetto in qualsiasi momento.
Sia la CLI Firebase sia la console Firebase ti consentono di installare, visualizzare e gestire le estensioni.
Percorso di implementazione
| Trova un'estensione | Esplora le estensioni disponibili in Extensions Hub. |
|
| Valuta, installa e configura un'estensione | Quando trovi un'estensione che soddisfa un'esigenza della tua app o del tuo progetto, puoi valutarla con l'Extensions emulatore, quindi installarla tramite la Firebase console o la Firebase CLI. Configura l'estensione in modo che sia personalizzata per la tua app o progetto. |
|
| Gestisci l'estensione | Visualizza e gestisci l'estensione installata utilizzando la Firebase console o la Firebase CLI. |
Passaggi successivi
Esplora Extensions Hub.
Installa un'estensione nel tuo progetto utilizzando la Firebase console o la Firebase CLI.