Inizia a utilizzare l'SDK Dart sperimentale

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 Firebase Admin Dart SDK.

Per iniziare a utilizzare le funzioni Dart, segui le attività di configurazione descritte in questa guida e poi continua a esplorare le funzioni HTTP e richiamabili di Dart.

Prerequisiti

Verifica di avere una versione di Firebase CLI che supporti Dart in Cloud Functions for Firebase con il flag --version:

 `firebase --version`

Attiva l'esperimento in Firebase CLI

firebase experiments:enable dartfunctions

Inizializza il progetto

  1. Esegui: bash firebase init functions
  2. Seleziona Dart come lingua.
  3. Quando ti viene chiesto "Do you want to install dependencies now?", rispondi "Yes".

Visualizza il codice della funzione

Visualizza il codice generato in functions/bin/server.dart (o nel 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 Impostare le opzioni di runtime.

Prova localmente

firebase emulators:start

Una volta avviata la Local Emulator Suite, vedrai una riga di log simile a functions http function initialized (http://127.0.0.1:5001/<url>). Carica questo URL nel browser per chiamare la funzione Dart emulata localmente.

Se modifichi il codice Dart, il Firebase Local Emulator Suite rileverà la modifica e ricaricherà automaticamente la funzione.

Esegui il deployment

firebase deploy --only functions

La procedura di deployment per Dart è diversa da quella per le funzioni Node.js o Python. Anziché caricare il codice sorgente da compilare in Cloud Build, la Firebase CLI esegue un passaggio di compilazione Dart sulla macchina di sviluppo e carica il file binario generato direttamente in Cloud Run Functions.

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 questo URL nel browser per chiamare la funzione Dart appena sottoposta a deployment.

Passaggi successivi

Limitazioni

  • Il trigger onCall può essere sottoposto a deployment, ma non può essere chiamato dagli SDK client con metodi come httpsCallable, che identificano le funzioni per nome. In alternativa, puoi utilizzare metodi come httpsCallableFromURL e passare l'URL Cloud Run completo della funzione.
  • Altri trigger, come i trigger Firestore, possono essere eseguiti nella Local Emulator Suite, ma non possono essere sottoposti a deployment.
  • Durante la release sperimentale, la Firebase console non mostra le funzioni Dart. Puoi visualizzare le funzioni Dart nella Cloud Run pagina funzioni della Cloud console invece.

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 Dart sperimentale.