Cloud Functions for Firebase'daki deneysel Dart desteği, Flutter ve Dart ile tam yığın uygulamalar oluşturmanıza olanak tanır. Yeni Firebase Admin Dart SDK ile diğer Firebase hizmetleriyle iletişim kurun.
Dart işlevlerini kullanmaya başlamak için bu kılavuzdaki kurulum görevlerini tamamlayın, ardından Dart HTTP ve çağrılabilir işlevleri keşfetmeye devam edin.
Ön koşullar
- Dart SDK 3.9 veya sonraki sürümler
- Firebase KSA (15.15.0 veya sonraki sürümler)
Firebase CLI'nın, --version işaretiyle Cloud Functions for Firebase içinde Dart'ı destekleyen bir sürümüne sahip olduğunuzdan emin olun:
`firebase --version`
Firebase CLI'da denemeyi etkinleştirin.
firebase experiments:enable dartfunctions
Projenizi ilk kullanıma hazırlayın
- Çalıştır:
bash firebase init functions - Diliniz olarak Dart'ı seçin.
- "Bağımlılıkları şimdi yüklemek istiyor musunuz?" sorusuna "Evet" yanıtını verin.
İşlev kodunuzu görüntüleme
functions/bin/server.dart (veya giriş noktanız) içinde oluşturulan kodu görüntüleyin. Bu kod, basit bir HTTP işlevini gösterir.
Örnek kodun, helloWorld işlevi için maksimum örnek sayısını HttpsOptions oluşturucuyla 10 olarak ayarladığını unutmayın. Çalışma zamanı seçenekleri hakkında daha fazla bilgiyi Çalışma zamanı seçeneklerini ayarlama başlıklı makalede bulabilirsiniz.
Yerel olarak test etme
firebase emulators:start
Local Emulator Suite başlatıldıktan sonra functions http function initialized
(http://127.0.0.1:5001/<url>) gibi bir günlük satırı görürsünüz. Yerel olarak emüle edilmiş Dart işlevinizi çağırmak için bu URL'yi tarayıcınıza yükleyin.
Dart kodunuzu düzenlerseniz Firebase Local Emulator Suite değişikliği algılar ve işlevinizi otomatik olarak yeniden yükler.
Dağıt
firebase deploy --only functions
Dart için dağıtım süreci, Node.js veya Python işlevlerinden farklıdır. Kaynak kodunuzu Cloud Build'da derlenmek üzere yüklemek yerine, Firebase KSA, geliştirme makinenizde bir Dart derleme adımı çalıştırır ve oluşturulan ikili programı doğrudan Cloud Run Functions'a yükler.
Dağıtım tamamlandığında Function URL
(hello-world(us-central1)): https://hello-world-<random-hash>.<region>.run.app gibi bir günlük satırı görürsünüz.
Yeni dağıtılan Dart işlevinizi çağırmak için bu URL'yi tarayıcınıza yükleyin.
Sonraki adımlar
- Minimum örnek sayısı gibi yapılandırma seçeneklerini ayarlayın.
- HTTP işlevleri ve çağrılabilir işlevler hakkında daha fazla bilgi edinin.
- Dart Functions Codelab'ini uygulayın Dart Functions Codelab'i
- İşlevinizden Cloud Firestore gibi diğer Firebase hizmetleriyle etkileşim kurmak için deneysel Dart Admin SDK'ı kullanın.
onRequestHTTP işlevlerine ek olarak,onCallörnek veyaonCallakışlı örnek deneyerek işlevleri doğrudan uygulamanızdan çağırabilirsiniz (çağırma yöntemiyle ilgili özel sınırlamaya dikkat edin).
Sınırlamalar
onCalltetikleyici dağıtılabilir ancak işlevleri ada göre tanımlayan httpsCallable gibi yöntemlerle istemci SDK'larından çağrılamaz. Bunun yerine httpsCallableFromURL gibi yöntemler kullanabilir ve işlevinizin tam Cloud Run URL'sini iletebilirsiniz.- Firestore tetikleyicileri gibi diğer tetikleyiciler yerel emülatör paketinde çalıştırılabilir ancak dağıtılamaz.
- Firebase konsolu, deneysel sürüm sırasında Dart işlevlerini göstermez. Dart işlevlerini bunun yerine Cloud konsolunun Cloud Run işlevler sayfasında görüntüleyebilirsiniz.
Dart işlevleriyle çalışırken sorunlarla karşılaşırsanız deneysel Dart SDK'yı iyileştirmemize ve genişletmemize yardımcı olmak için ekibe rapor göndermeniz önerilir.