¿Obtener los nombres de los nodos secundarios de Firebase sin obtener también a sus hijos en la respuesta de Firebase?
Tengo la siguiente jerarquía en Firebase, algunos datos están ocultos por confidencialidad:
Estoy intentando obtener una lista de ID de videos (subrayados en rojo)
¡Solo puedo obtener todos los nodos, luego detectar sus nombres y almacenarlos en una matriz!
Pero esto provoca un bajo rendimiento; porque eldataSnapshot
desde mi base de firebase es muy grande en mi caso, por lo que quiero evitar recuperar todo el contenido de los nodos y luego hacer un bucle sobre ellos para obtener ID, solo necesito recuperar los ID, es decir, sin sus elementos anidados.
Aquí está mi código:
new Firebase("https://PRIVATE_NAME.firebaseio.com/videos/").once(
'value',
function(dataSnapshot){
// dataSnapshot now contains all the videos ids, lines & links
// this causes many performance issues
// Then I need to loop over all elements to extract ids !
var videoIdIndex = 0;
var videoIds = new Array();
dataSnapshot.forEach(
function(childSnapshot) {
videoIds[videoIdIndex++] = childSnapshot.name();
}
);
}
);
¿Cómo puedo recuperar solo las ID para evitar la gran cantidad de transferencia de datos y para evitar el bucle sobre los datos recuperados para obtener las ID? ¿hay una manera de simplemente recuperar estos identificadores directamente?