Empresas
Empregos
  • Sobre nós
  • Soluções
    • Publicação de vagas
      Publique sua vaga e receba candidatos qualificados em 48h.
    • Avaliações de candidatos
      Mais de 500 testes técnicos e psicológicos, mais anti-fraude.
    • Headhunting
      Busca executiva personalizada do início ao fim.
    • Folha de Pagamento + EOR
      Dispersão de folha e EOR em mais de 15 países da LATAM.
  • Preços
  • Empregos

0

242
Visualizações
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 Respostas
Responde à pergunta

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 Relatório
Responde à pergunta
Encontrar trabalhos remotos

Descubra a nova forma de encontrar um emprego!

melhores empregos
Principais categorias de trabalho
Empresas
Postar vaga Preços Comercial
Jurídico
Termos e Condições Política de privacidade
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Recomende algumas ofertas para mim
Preciso de ajuda