Cloud Functions for Firebase में Dart के एक्सपेरिमेंटल वर्शन की मदद से, Flutter और Dart का इस्तेमाल करके फ़ुल-स्टैक ऐप्लिकेशन बनाए जा सकते हैं. Firebase की अन्य सेवाओं से कम्यूनिकेट करने के लिए, नए Firebase Admin Dart SDK का इस्तेमाल करें.
Dart फ़ंक्शन का इस्तेमाल शुरू करने के लिए, इस गाइड में दिए गए सेटअप से जुड़े टास्क पूरे करें. इसके बाद, Dart HTTP और कॉल किए जा सकने वाले फ़ंक्शन के बारे में जानें.
ज़रूरी शर्तें
- Dart SDK 3.9 या इसके बाद का वर्शन
- Firebase CLI (वर्शन 15.15.0 या इसके बाद का वर्शन)
यह पक्का करें कि आपके पास Firebase CLI का वह वर्शन हो जो
Cloud Functions for Firebase में Dart को सपोर्ट करता हो. इसके लिए, --version फ़्लैग का इस्तेमाल करें:
`firebase --version`
Firebase CLI में एक्सपेरिमेंट चालू करना
firebase experiments:enable dartfunctions
अपने प्रोजेक्ट को शुरू करना
यह कमांड चलाएं:
firebase init functionsअपनी भाषा के तौर पर Dart को चुनें.
"क्या आपको अभी डिपेंडेंसी इंस्टॉल करनी हैं?" पूछे जाने पर, "हां" जवाब दें.
अपने फ़ंक्शन का कोड देखना
functions/bin/server.dart (या आपके एंट्री पॉइंट) में जनरेट किया गया कोड देखें. यह कोड, एक सामान्य एचटीटीपी फ़ंक्शन दिखाता है.
ध्यान दें कि सैंपल कोड में, HttpsOptions कंस्ट्रक्टर की मदद से, helloWorld फ़ंक्शन के लिए ज़्यादा से ज़्यादा 10 इंस्टेंस सेट किए गए हैं. रनटाइम के विकल्पों के बारे में ज़्यादा जानने के लिए, रनटाइम के विकल्प सेट करना लेख पढ़ें.
स्थानीय तौर पर टेस्ट करना
firebase emulators:start
Local Emulator Suite बूट होने के बाद, आपको
functions http function initialized
(http://127.0.0.1:5001/<url>) जैसी लॉग लाइन दिखेगी. स्थानीय तौर पर एम्युलेट किए गए Dart फ़ंक्शन को कॉल करने के लिए, उस यूआरएल को अपने ब्राउज़र में लोड करें.
अगर आपने Dart कोड में बदलाव किया है, तो Firebase Local Emulator Suite को इसकी जानकारी मिल जाएगी. इसके बाद, यह आपके फ़ंक्शन को अपने-आप रीलोड कर देगा.
डिप्लॉय करें
firebase deploy --only functions
Dart को डिप्लॉय करने की प्रोसेस, Node.js या Python फ़ंक्शन को डिप्लॉय करने की प्रोसेस से अलग होती है. Firebase CLI, आपके डेवलपमेंट मशीन पर Dart कंपाइल करने का चरण चलाता है. इसके बाद, जनरेट की गई बाइनरी को सीधे Cloud Run फ़ंक्शन पर अपलोड करता है. इसके लिए, आपको अपना सोर्स कोड Cloud Build पर अपलोड करने की ज़रूरत नहीं होती.Firebase
डिप्लॉयमेंट पूरा होने पर, आपको Function URL
(hello-world(us-central1)): https://hello-world-<random-hash>.<region>.run.app जैसी लॉग लाइन दिखेगी
हाल ही में डिप्लॉय किए गए Dart फ़ंक्शन को कॉल करने के लिए, उस यूआरएल को अपने ब्राउज़र में लोड करें.
अगले चरण
- कॉन्फ़िगरेशन के विकल्प सेट करना. जैसे, कम से कम इंस्टेंस.
- एचटीटीपी फ़ंक्शन और कॉल किए जा सकने वाले फ़ंक्शन के बारे में ज़्यादा जानना.
- Dart फ़ंक्शन कोडलैब के निर्देशों का पालन करना Dart फ़ंक्शन कोडलैब
- एक्सपेरिमेंटल Dart Admin SDK का इस्तेमाल करके, अन्य Firebase सेवाओं से इंटरैक्ट करना. जैसे, Cloud Firestore, अपने फ़ंक्शन से
onRequestएचटीटीपी फ़ंक्शन के अलावा,onCallसैंपल या स्ट्रीमिंग के साथonCallसैंपल आज़माया जा सकता है. इससे आपके ऐप्लिकेशन से सीधे फ़ंक्शन को कॉल किया जा सकता है . हालांकि, कॉल करने के तरीके से जुड़ी खास सीमा का ध्यान रखें.
सीमाएं
onCallट्रिगर को डिप्लॉय किया जा सकता है. हालांकि, इसे क्लाइंट एसडीके से कॉल नहीं किया जा सकता. इसके लिए, httpsCallable जैसे तरीकों का इस्तेमाल किया जाता है. इन तरीकों से, नामों के हिसाब से फ़ंक्शन की पहचान की जाती है. इसके बजाय, httpsCallableFromURL जैसे तरीकों का इस्तेमाल किया जा सकता है. साथ ही, अपने फ़ंक्शन का पूरा Cloud Run यूआरएल पास किया जा सकता है.- Firestore ट्रिगर जैसे अन्य ट्रिगर को लोकल एम्युलेटर सुइट में चलाया जा सकता है, लेकिन उन्हें डिप्लॉय नहीं किया जा सकता.
- Firebase कंसोल में एक्सपेरिमेंटल रिलीज़ के दौरान Dart फ़ंक्शन नहीं दिखते. इसके बजाय, Cloud Run फ़ंक्शन वाले पेज पर Cloud console देखे जा सकते हैं.
अगर आपको Dart फ़ंक्शन के साथ काम करते समय समस्याएं आती हैं, तो हमारी टीम को रिपोर्ट भेजें . इससे हमें एक्सपेरिमेंटल Dart SDK को बेहतर बनाने और इसका दायरा बढ़ाने में मदद मिलेगी.