Il supporto sperimentale di Dart in Cloud Functions for Firebase ti consente di creare app full-stack con Flutter e Dart. Comunica con altri servizi Firebase con il nuovo SDK Admin Dart Firebase.
Per iniziare a utilizzare le funzioni Dart, completa le attività di configurazione descritte in questa guida e poi continua a esplorare le funzioni HTTP e chiamabili di Dart.
Prerequisiti
- SDK Dart 3.9 o versioni successive
- Firebase CLI (versione 15.15.0 o successive)
Verifica di avere una versione della CLI Firebase che supporta Dart in
Cloud Functions for Firebase con il flag --version:
`firebase --version`
Attiva l'esperimento nella CLI Firebase
firebase experiments:enable dartfunctions
Inizializza il progetto
- Corsa:
bash firebase init functions - Seleziona Dart come lingua.
- Quando ti viene chiesto "Vuoi installare le dipendenze ora?", rispondi "Sì".
Visualizzare il codice per la funzione
Visualizza il codice generato in functions/bin/server.dart (o nel tuo punto di ingresso). Questo codice mostra una semplice funzione HTTP.
Tieni presente che il codice campione imposta il numero massimo di istanze per la funzione
helloWorld su 10 con il costruttore HttpsOptions. Puoi scoprire
di più sulle opzioni di runtime in Imposta le opzioni
di runtime.
Testare localmente
firebase emulators:start
Una volta avviato Local Emulator Suite, vedrai una
riga di log come functions http function initialized
(http://127.0.0.1:5001/<url>). Carica l'URL nel browser per chiamare la funzione Dart emulata localmente.
Se modifichi il codice Dart, Firebase Local Emulator Suite rileverà la modifica e ricaricherà automaticamente la funzione.
Esegui deployment
firebase deploy --only functions
Il processo di deployment per Dart è diverso da quello per le funzioni Node.js o Python. Anziché caricare il codice sorgente da compilare in Cloud Build, la CLI Firebase esegue un passaggio di compilazione Dart sulla macchina di sviluppo e carica il binario generato direttamente nelle funzioni Cloud Run.
Al termine del deployment, vedrai una riga di log simile a Function URL
(hello-world(us-central1)): https://hello-world-<random-hash>.<region>.run.app
Carica l'URL nel browser per chiamare la funzione Dart appena implementata.
Passaggi successivi
- Imposta le opzioni di configurazione come il numero minimo di istanze.
- Scopri di più sulle funzioni HTTP e sulle funzioni chiamabili.
- Segui il codelab Funzioni Dart codelab Funzioni Dart
- Utilizza Dart Admin SDK sperimentale per interagire con altri servizi Firebase, come Cloud Firestore, dalla tua funzione
- Oltre alle funzioni HTTP
onRequest, puoi provare un esempioonCallo un esempioonCallcon lo streaming per chiamare le funzioni direttamente dalla tua app (tenendo presente la limitazione speciale relativa al metodo di chiamata).
Limitazioni
- Il trigger
onCallpuò essere implementato, ma non può essere chiamato dagli SDK client con metodi come httpsCallable, che identificano le funzioni per nome. Puoi invece utilizzare metodi come httpsCallableFromURL e passare l'URL Cloud Run completo della tua funzione. - Altri trigger, come i trigger Firestore, possono essere eseguiti nella suite di emulatori locali, ma non possono essere implementati.
- La console Firebase non mostra le funzioni Dart durante il rilascio sperimentale. Puoi visualizzare le funzioni Dart nella pagina delle funzioniCloud Run della consoleCloud.
Se riscontri problemi durante l'utilizzo delle funzioni Dart, ti invitiamo a inviare un report al team per aiutarci a migliorare ed espandere l'SDK sperimentale Dart.