如何使用javaScript从实时数据库,Firebase函数中的所有randomId中获取特定的键值

时间:2018-07-19 10:32:50

标签: javascript node.js firebase firebase-realtime-database google-cloud-firestore

我想获取用户的所有位置以查找最近的朋友

我的Firebase实时数据库结构

--->用户

  • ---> userRandomId

          --->  name:
                 location :[12312,213123]
    
  • ---> userRandomId

           --->  name:
                 location :[12342,2143]
    

我想在调用该函数时获取每个孩子的所有位置。

我尝试过:

var db = admin.database();

var ref1 = db.ref("users/{UserrandomiID}/location/");


ref1.on("value", (snapshot) => {
    console.log(snapshot.val());
}, (errorObject) => {
    console.log("The read failed: " + errorObject.code);
}); 

它总是返回nill。 为什么会发生?

1 个答案:

答案 0 :(得分:2)

尝试以下操作:

var db = admin.database();
var ref1 = db.ref("users");

ref1.on("value", (snapshot) => {
 snapshot.forEach((childSnapshot)=> {
    let location = childSnapshot.val().location;
      });
}); 

快照位于users,然后在ID内循环并检索位置。