2017-04-15 12 views
5

में प्रमाणीकृत है, तो मेरे पास angularfire2 का उपयोग कर एक वर्किंग प्रमाणीकरण है, मैं बस यह सोच रहा हूं कि उपयोगकर्ता को हाल ही में लॉग इन करने के बाद उपयोगकर्ता को प्रमाणीकृत किया गया है या नहीं? तरह से मैं यह कर इसजांच कर रहा है कि क्या उपयोगकर्ता अभी भी angularfire2

isAuthenticated():boolean{ 
this.af.auth.subscribe(data => { 
    if(data){ 
    // User is authenticated 
    return true; 
    } 
}); 
} 

किसी भी मदद की सराहना की

की तरह है

संपादित करें 1:।

मैं अभी भी उपयोगकर्ता हाल ही में प्रवेश कर रहा है, तो जाँच करने के लिए मूल कोड का उपयोग करने का निर्णय लिया क्या @ कार्टेंट सुझाव दिया गया है जब आप अपने आवेदन की शुरुआत में उपयोगकर्ता की जांच नहीं कर रहे हैं क्योंकि यह फायरबेस आधिकारिक दस्तावेज़ों में बताए गए शून्य को वापस कर सकता है। जिस तरह से मैंने इसका इस्तेमाल किया है वह यह है कि मेरे पास मेनू आइटम हैं जिन्हें केवल प्रमाणित उपयोगकर्ताओं को दिखाया जाना चाहिए और firebase.auth().currentUser का उपयोग पृष्ठ के प्रारंभिक लोड पर हमेशा शून्य हो जाएगा।

+0

क्या है कि तुम ले रहे हैं। कोई त्रुटि या? – Aravind

+0

@ अरविंद मुझे कोई त्रुटि नहीं मिल रही है। मैं सिर्फ यह जानना चाहता हूं कि यह जांचने का कोई तरीका है कि उपयोगकर्ता इस .af.auth.subscribe() – brijmcq

उत्तर

7

AngularFire2 वर्त्तमान में कुछ पुनर्रचना और उसके प्रमाणीकरण एपीआई के महत्वपूर्ण हिस्से AngularFire2 साथ संयोजन के रूप में Firebase वेब एपीआई का उपयोग कर के पक्ष में हटा दिया जाना चाहिए जा रहे है। this issue में और जानकारी है।

आपके द्वारा उपयोग किए जाने वाले अवलोकन योग्य कोणीयफ़ीयर 2 में बने रहेंगे और आप प्रमाणीकरण स्थिति में परिवर्तनों की अधिसूचनाएं प्राप्त करने के लिए इसकी सदस्यता ले सकते हैं।

हालांकि, अगर तुम सब में यह पता लगाना है या नहीं, एक वर्तमान में प्रमाणित उपयोगकर्ता है वहाँ रुचि रखते हैं, वहाँ Firebase वेब एपीआई में एक currentUser संपत्ति है जो आपको बताएगा कि है:

import * as firebase from "firebase"; 
... 
console.log(firebase.auth().currentUser); 
+0

का उपयोग किए बिना लॉग इन है या नहीं, आपके उत्तर के लिए धन्यवाद। हाँ, मैंने उस कोड को कहीं भी देखा। मैंने सोचा कि angularfire2 में इसके लिए एक एपीआई हो सकता है। मुझे लगता है कि मुझे इसके लिए एक अद्यतन की प्रतीक्षा करनी होगी। – brijmcq

+1

कोई चिंता नहीं। जिस बिंदु पर मैं जवाब देने की कोशिश कर रहा था, यह था कि एंगुलरफायर 2 को केवल चीजों को लपेटने से बचने के लिए दोहराया जा रहा है जो अंतर्निहित फायरबेस वेब एपीआई के साथ किया जा सकता है और संयोजन के साथ दोनों का उपयोग करने के लिए प्रोत्साहित किया जा रहा है। तो 'currentUser' के बराबर AngularFire2 में जोड़ा नहीं जा रहा है और आप अभी भी फायरबेस वेब एपीआई के' वर्तमान उपयोगकर्ता 'का उपयोग करना शुरू कर सकते हैं। – cartant

+0

फिर से धन्यवाद! में इसे याद रखूंगा। – brijmcq

संबंधित मुद्दे