डाटा लिया जा रहा है:
अपने डेटाबेस में, आप एक यादृच्छिक आईडी का उपयोग कर रहे हैं जो कि का उपयोग करके उत्पन्न होती है push()
, इसलिए यदि आप डेटा को पुनः प्राप्त करना चाहते हैं तो निम्न कार्य करें:
एंड्रॉइड ऐप में फायरबेस का उपयोग करना:
DatabaseReference ref=FirebaseDatabase.getInstance().getReference().child("users");
ref.addListenerForSingleValueEvent(new ValueEventListener() {
@Override
public void onDataChange(DataSnapshot dataSnapshot) {
for (DataSnapshot datas : dataSnapshot.getChildren()) {
String name=datas.child("name").getValue().toString();
}
}
@Override
public void onCancelled(DatabaseError databaseError) {
}
});
जावास्क्रिप्ट में फायरबेस का उपयोग करना:
firebase.database().ref().child("users").on('value', function (snapshot) {
snapshot.forEach(function(childSnapshot) {
var name=childSnapshot.val().name;
});
});
यहां आपके पास स्नैपशॉट (डेटा का स्थान) है users
फिर आप सभी यादृच्छिक आईडी के अंदर लूप करते हैं और नामों को पुनः प्राप्त करते हैं।
विशिष्ट उपयोगकर्ता के लिए पुनर्प्राप्त डेटा:
अब यदि आप केवल एक विशिष्ट उपयोगकर्ता के लिए जानकारी प्राप्त करना चाहते हैं, तो आपको एक क्वेरी जोड़ने की आवश्यकता है:
एंड्रॉइड ऐप में फायरबेस का उपयोग करना:
DatabaseReference ref=FirebaseDatabase.getInstance().getReference().child("users");
Query queries=ref.orderByChild("name").equalTo("Alex");
queries.addListenerForSingleValueEvent(new ValueEventListener() {...}
जावास्क्रिप्ट के साथ Firebase का उपयोग करना
firebase.database().ref().child("users").orderByChild("name").equalTo("Alex").on('value', function (snapshot) {
snapshot.forEach(function(childSnapshot) {
var name=childSnapshot.val().name;
});
});
उपयोग करना orderByChild("name").equalTo("Alex")
ऐसा कहने जैसा है कि where name="Alex"
यह एलेक्स से संबंधित डेटा को पुनः प्राप्त करेगा।
सबसे अच्छा तरीका:
सबसे अच्छी बात यह है कि फायरबेस ऑथेंटिकेशन का उपयोग करें, इस प्रकार प्रत्येक उपयोगकर्ता के लिए एक अद्वितीय आईडी बनाते हैं और यादृच्छिक आईडी के बजाय इसका उपयोग करते हैं push()
, इस तरह से आपको सभी उपयोगकर्ताओं के माध्यम से लूप नहीं करना पड़ता है क्योंकि आपके पास आईडी है और आसानी से इसे एक्सेस कर सकते हैं।
सबसे पहले, उपयोगकर्ता को साइन इन करने की आवश्यकता होती है, फिर आप अद्वितीय आईडी को पुनः प्राप्त कर सकते हैं और एक श्रोता को उस डेटा के अन्य डेटा को पुनः प्राप्त करने के लिए संलग्न कर सकते हैं:
Android के साथ Firebase का उपयोग करना:
DatabaseReference ref = FirebaseDatabase.getInstance().getReference("users");
String uid = FirebaseAuthentication.getInstance().getCurrentUser().getUid();
ref.child(uid).addListenerForSingleValueEvent(new ValueEventListener() {
@Override
public void onDataChange(DataSnapshot dataSnapshot) {
String name=dataSnapshot.child("name").getValue().toString();
}
@Override
public void onCancelled(DatabaseError databaseError) {
}
});
जावास्क्रिप्ट के साथ Firebase का उपयोग करना:
var user = firebase.auth().currentUser;
var uid=user.uid;
firebase.database().ref().child("users").child(uid).on('value', function (snapshot) {
var name=snapshot.val().name;
});