Начните работу с экспериментальным SDK Dart.

Экспериментальная поддержка Dart в Cloud Functions for Firebase позволяет создавать полнофункциональные приложения с использованием Flutter и Dart. Взаимодействуйте с другими сервисами Firebase с помощью нового Firebase Admin Dart SDK.

Чтобы начать работу с функциями Dart, выполните задачи по настройке, описанные в этом руководстве, а затем продолжите изучение HTTP-функций и вызываемых функций Dart.

Предварительные требования

Убедитесь, что у вас установлена ​​версия Firebase CLI, поддерживающая Dart в Cloud Functions for Firebase используя флаг --version :

 `firebase --version`

Включите эксперимент в Firebase CLI.

firebase experiments:enable dartfunctions

Инициализируйте свой проект

  1. Бегать:

    firebase init functions
    
  2. Выберите Dart в качестве языка программирования.

  3. На вопрос "Хотите ли вы установить зависимости сейчас?" ответьте "Да".

Просмотрите код вашей функции

Просмотрите код, сгенерированный в functions/bin/server.dart (или в вашей точке входа). Этот код демонстрирует простую HTTP-функцию.

Note that the sample code sets the maximum number of instances for the helloWorld function to 10 with the HttpsOptions constructor. You can learn more about runtime options in Set runtime options .

Протестируйте локально.

firebase emulators:start

Once the Local Emulator Suite boots up, you'll see a log line like functions http function initialized (http://127.0.0.1:5001/<url>) . Load that URL in your browser to call your locally emulated Dart function.

Если вы отредактируете свой код Dart, Firebase Local Emulator Suite обнаружит изменение и автоматически перезагрузит вашу функцию.

Развертывать

firebase deploy --only functions

The deployment process for Dart is different from Node.js or Python functions. Instead of uploading your source code to be built in Cloud Build , the Firebase CLI runs a Dart compile step on your development machine and uploads the generated binary directly to Cloud Run functions.

После завершения развертывания вы увидите строку в логе, похожую на Function URL (hello-world(us-central1)): https://hello-world-<random-hash>.<region>.run.app

Загрузите этот URL-адрес в свой браузер, чтобы вызвать только что развернутую функцию Dart.

Следующие шаги

Ограничения

  • The onCall trigger can be deployed, but cannot be called from client SDKs with methods such as httpsCallable , which identify functions by name. You can instead use methods such as httpsCallableFromURL and pass the full Cloud Run URL of your function.
  • Другие триггеры, например, триггеры Firestore, могут запускаться в локальном эмуляторе, но не могут быть развернуты.
  • В экспериментальной версии консоли Firebase функции Dart не отображаются. Вместо этого вы можете просмотреть функции Dart на странице «Функции Cloud Run в консоли Cloud .

Если вы обнаружите проблемы при работе с функциями Dart, просим вас отправить отчет команде , чтобы помочь нам улучшить и расширить экспериментальный SDK Dart.