Business
Jobs
  • About Us
  • Solutions
    • Job Postings
      Post your job and receive qualified candidates in 48h.
    • Candidate Assessments
      500+ technical and psychological tests, plus anti-fraud.
    • Headhunting
      Tailor-made executive search from start to finish.
    • Payroll + EOR
      Payroll dispersal and EOR across 15+ LATAM countries.
  • Pricing
  • Jobs

0

243
Views
La suscripción a la base de datos en tiempo real no funciona: Firebase

Tengo una configuración para escuchar cambios en tiempo real en la base de datos de firebase:

Así es como se ve la ruta: Path = funfuse/users/connected-users/AfYXmJroEKQwnhiFXXXXXiyblti22

Así es como está estructurada mi base de datos:

ingrese la descripción de la imagen aquí

Cuando intento agregar una entrada al último hijo (es decir connected-users ), se actualiza en la base de datos, pero aunque tengo la aplicación ejecutándose en mi navegador web, no recibo ningún mensaje de registro para la actualización:

 useEffect(() => { if (isLoggedIn && firebaseToken !== '') { const path = `${rdb_paths.funfuse_connected_users}/${user?.uid ?? ''}`; const connectionsRef = ref(rdb, path); console.log('Path = ', path); onValue(connectionsRef, (snapshot) => { console.log('Values = ', snapshot.val()); }); return () => { console.log('Switching off listening'); off(connectionsRef); }; } }, [firebaseToken, isLoggedIn, user?.uid]);

¿Estoy haciendo algo mal aquí? ¿Por qué no puedo obtener las actualizaciones? Aquí están mis reglas de seguridad:

 { "rules": { "funfuse": { "users": { "requests-users": { "$uid": { ".read":"$uid === auth.uid && auth.token.email_verified === true", ".write":"$uid === auth.uid && auth.token.email_verified === true" } }, "requested-users": { "$uid": { ".read":"$uid === auth.uid && auth.token.email_verified === true", ".write":"$uid === auth.uid && auth.token.email_verified === true" } }, "connected-users": { "$uid": { ".read":"$uid === auth.uid && auth.token.email_verified === true", ".write":"$uid === auth.uid && auth.token.email_verified === true" } } } } } }

Ejecuté una simulación para leer y escribir datos y funcionó bien. ¿Necesito agregar una regla adicional para escuchar las actualizaciones de datos?

about 4 years ago · Juan Pablo Isaza
1 answers
Answer question

0

Me di cuenta de que el problema se debía a que estaba tomando la URL de la base de datos default , ya que no la estaba pasando en mi objeto de configuración:

 const firebaseConfig = { apiKey: process.env.NEXT_PUBLIC_FB_CLIENT_API_KEY, authDomain: process.env.NEXT_PUBLIC_FB_CLIENT_AUTH_DOMAIN, projectId: process.env.NEXT_PUBLIC_FB_CLIENT_PROJECT_ID, storageBucket: process.env.NEXT_PUBLIC_FB_CLIENT_STORAGE_BUCKET, messagingSenderId: process.env.NEXT_PUBLIC_FB_CLIENT_MESSAGING_SENDER_ID, appId: process.env.NEXT_PUBLIC_FB_CLIENT_APP_ID, measurementId: process.env.NEXT_PUBLIC_FB_CLIENT_MEASUREMENT_ID, };

cambiando lo anterior a:

 const firebaseConfig = { apiKey: process.env.NEXT_PUBLIC_FB_CLIENT_API_KEY, authDomain: process.env.NEXT_PUBLIC_FB_CLIENT_AUTH_DOMAIN, projectId: process.env.NEXT_PUBLIC_FB_CLIENT_PROJECT_ID, storageBucket: process.env.NEXT_PUBLIC_FB_CLIENT_STORAGE_BUCKET, messagingSenderId: process.env.NEXT_PUBLIC_FB_CLIENT_MESSAGING_SENDER_ID, appId: process.env.NEXT_PUBLIC_FB_CLIENT_APP_ID, measurementId: process.env.NEXT_PUBLIC_FB_CLIENT_MEASUREMENT_ID, databaseURL: process.env.NEXT_PUBLIC_FB_CLIENT_DB_URL, };

resolvió el problema para mí.

about 4 years ago · Juan Pablo Isaza Report
Answer question
Find remote jobs

Discover the new way to find a job!

Top jobs
Top job categories
Business
Post vacancy Pricing Sales
Legal
Terms and conditions Privacy policy
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Show me some job opportunities
There's an error!