initializeServerApp() के लिए कॉन्फ़िगरेशन के विकल्प
हस्ताक्षर:
export interface FirebaseServerAppSettings extends Omit<FirebaseAppSettings, 'name'>
एक्सटेंडेड: <FirebaseAppSettings, 'name'> हटाएं
प्रॉपर्टी
प्रॉपर्टी | टाइप | ब्यौरा |
---|---|---|
authIdToken | स्ट्रिंग | किसी क्लाइंट रनटाइम एनवायरमेंट से साइन इन किए गए उपयोगकर्ता सेशन को फिर से शुरू करने के लिए, एक वैकल्पिक पुष्टि आईडी टोकन का इस्तेमाल किया जाता है.अगर getAuth को पुष्टि किए गए authIdToken के साथ कॉन्फ़िगर किए गए FirebaseServerApp के साथ शुरू किया जाता है, तो उपयोगकर्ता से अपने-आप साइन इन हो जाता है जिसका इस्तेमाल authIdToken करता है. इस कार्रवाई को पूरा करने के लिए, टोकन को हाल ही में मिनट करना होगा.अगर लोकल पर पुष्टि के लिए टोकन जनरेट नहीं हो पाता है या SDK टूल शुरू होने पर, पुष्टि करने वाली सेवा इसकी पुष्टि नहीं कर पाती है, तो कंसोल पर चेतावनी लॉग की जाएगी. साथ ही, SDK टूल शुरू करने पर उपयोगकर्ता को साइन इन नहीं करेगा.अगर उपयोगकर्ता ने साइन इन कर लिया है, तो स्टैंडर्ड ऑथराइज़ेशन के मुताबिक, ऑथराइज़ेशन इंस्टेंस के onAuthStateChanged कॉलबैक को User ऑब्जेक्ट के साथ शुरू कर दिया जाता है. हालांकि, authIdToken के ज़रिए बनाए गए User ऑब्जेक्ट में रीफ़्रेश टोकन नहीं होता. refreshToken कार्रवाइयां करने की कोशिश नहीं की जा सकी. |
ReleaseOnDeref | ऑब्जेक्ट | एक वैकल्पिक ऑब्जेक्ट. अगर Firebase SDK टूल दिया गया है, तो दिए गए ऑब्जेक्ट के कूड़े के कलेक्शन की स्थिति को मॉनिटर करने के लिए, FinalizationRegistry ऑब्जेक्ट का इस्तेमाल करता है. जब दिया गया releaseOnDeref ऑब्जेक्ट कचरा इकट्ठा करता है, तब Firebase SDK टूल FirebaseServerApp इंस्टेंस पर अपना रेफ़रंस रिलीज़ करता है.ऐप्लिकेशन के मेमोरी मैनेजमेंट के काम को कम करने के लिए, इस फ़ील्ड का इस्तेमाल किया जा सकता है. अगर SSR पास में चल रहे ऐप्लिकेशन को दिया जाता है, तो FirebaseServerApp क्लीनअप करने की ज़रूरत नहीं होती है. जब तक रेफ़रंस ऑब्जेक्ट मिटा दिया जाता है (उदाहरण के लिए, SSR के दायरे से बाहर जाकर.)अगर कोई ऑब्जेक्ट नहीं दिया जाता है, तो ऐप्लिकेशन को deleteApp को शुरू करके FirebaseServerApp इंस्टेंस को साफ़ करना होगा.अगर ऐप्लिकेशन इस पैरामीटर में कोई ऑब्जेक्ट देता है, लेकिन शुरुआती नोड 6 के साथ काम करने वाले नोड को 'FirebaseServerApp v1.1' में लागू किया जाता है. FirebaseServerApp FinalizationRegistry |
FirebaseServerAppSettings.authIdToken
यह एक वैकल्पिक पुष्टि आईडी टोकन होता है. इसका इस्तेमाल, क्लाइंट रनटाइम एनवायरमेंट से साइन इन किए गए उपयोगकर्ता सेशन को फिर से शुरू करने के लिए किया जाता है.
getAuth
को एक पुष्टि हो चुके authIdToken
के साथ कॉन्फ़िगर किए गए FirebaseServerApp
के साथ शुरू करने से, उस उपयोगकर्ता को अपने-आप साइन इन करने की कोशिश होती है जिसका प्रतिनिधित्व authIdToken
करता है. इस कार्रवाई को पूरा करने के लिए, टोकन को हाल ही में मिंट करना ज़रूरी है.
अगर स्थानीय तौर पर पुष्टि करने के दौरान टोकन फ़ेल हो जाता है या पुष्टि करने वाले SDK टूल के शुरू होने पर, पुष्टि करने वाली सेवा की पुष्टि नहीं हो पाती है, तो कंसोल में चेतावनी लॉग की जाती है. साथ ही, पुष्टि करने की प्रक्रिया शुरू होने पर, SDK टूल किसी उपयोगकर्ता को साइन इन नहीं करेगा.
अगर किसी उपयोगकर्ता ने साइन इन कर लिया है, तो स्टैंडर्ड पुष्टि फ़्लो के मुताबिक, पुष्टि करने के इंस्टेंस के onAuthStateChanged
कॉलबैक को User
ऑब्जेक्ट के साथ शुरू किया जाता है. हालांकि, authIdToken
के ज़रिए बनाए गए User
ऑब्जेक्ट में रीफ़्रेश टोकन नहीं होता. refreshToken
कार्रवाइयां करने की कोशिश नहीं की जा सकी.
हस्ताक्षर:
authIdToken?: string;
FirebaseServerAppSettings.releaseOnDeref
एक वैकल्पिक ऑब्जेक्ट. अगर Firebase SDK टूल दिया गया है, तो दिए गए ऑब्जेक्ट के कूड़े के कलेक्शन की स्थिति को मॉनिटर करने के लिए, FinalizationRegistry
ऑब्जेक्ट का इस्तेमाल करता है. जब दिया गया releaseOnDeref
ऑब्जेक्ट ग़ैर-ज़रूरी चीज़ें इकट्ठा करता है, तब Firebase SDK टूल FirebaseServerApp
इंस्टेंस पर अपना रेफ़रंस रिलीज़ करता है.
आप इस फ़ील्ड का इस्तेमाल अपने ऐप्लिकेशन के मेमोरी मैनेजमेंट के काम को कम करने के लिए कर सकते हैं. अगर एसएसआर पास में चल रहे ऐप्लिकेशन के लिए कोई वैल्यू दी जाती है, तो उसे FirebaseServerApp
क्लीनअप करने की ज़रूरत नहीं होती. ऐसा तब तक होता है, जब तक रेफ़रंस ऑब्जेक्ट मिटा दिया जाता है. उदाहरण के लिए, एसएसआर के दायरे से बाहर होने पर.
अगर कोई ऑब्जेक्ट नहीं दिया गया है, तो ऐप्लिकेशन को deleteApp
को चालू करके, FirebaseServerApp
इंस्टेंस को खाली करना होगा.
अगर ऐप्लिकेशन इस पैरामीटर में कोई ऑब्जेक्ट देता है, लेकिन ऐप्लिकेशन को ऐसे JavaScript इंजन में एक्ज़ीक्यूट किया जाता है जो FinalizationRegistry
(उदाहरण के लिए, नोड v14.6.0 में शुरू किया गया) के काम करने से पहले का है, तो FirebaseServerApp
शुरू करते समय गड़बड़ी होती है.
हस्ताक्षर:
releaseOnDeref?: object;