Conozco varias claves cuyos valores quiero. Quiero obtenerlos todos en una llamada de base de datos en tiempo real de firebase. El rendimiento es el rey. Si sé lo que quiero y dónde está en la base de datos, no debería tener que hacer varias consultas para obtener los datos.
Por ejemplo, puedo hacer una actualización de varias rutas a la vez de la siguiente manera:
const updates = {}; const usermeta = { username: username, email: user.email, lastlogin: unixEpoch, signupdate: unixEpoch, tier: tierChosen }; updates[`/account/${uid}`] = usermeta; updates[`/users/${username}`] = 1; updates[`/fun/key/to/query`] = "Magic."; updates[`/slow/key/to/query`] = "Not magic."; updates[`/fast/key/to/query`] = "Magical."; rootdb.ref().update(updates)Sé todas mis actualizaciones, haz una llamada y listo. Eficiente, rápido, de baja latencia. ¿Cómo hago lo mismo en el lado de lectura? No quiero escuchar valores. Quiero recuperarlos una vez. Sé dónde están, solo obténgalos todos en una consulta.
Ejemplo, usando los datos de actualización de arriba, digamos que quiero los datos en las claves/rutas:
`/fun/key/to/query` `/account/${uid}/username` `/account/${uid}/signupdate` `/slow/key/to/query`¿Cómo puedo obtenerlos todos en una llamada de lectura a Firebase Realtime Database?
En la búsqueda que hice antes de publicar no pude encontrar una respuesta a esto. Cada solución era utilizar oyentes o hacer varias llamadas.