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

213
Visualizações
Firebase 9.4.1 y la función de autenticación de Javscript "onAuthStateChanged" funcionan lentamente

Estoy aprendiendo Firebase y estoy usando la última versión 9.4.1 para Web con Javascript y Jquery. Tengo el siguiente código donde verifico si el usuario está conectado actualmente y, en caso afirmativo, no tiene permiso para acceder a la página de inicio de sesión. Del mismo modo, si el usuario ha iniciado sesión, también escondo los botones "Registrarse" e "Iniciar sesión" y muestro el botón "Cerrar sesión". Sin embargo, durante mi experimento descubrí que estas acciones se realizan con bastante lentitud. Esto significa que si trato de acceder a la página de inicio de sesión, la página se carga durante casi medio segundo, muestra todo el contenido de la página (formulario de inicio de sesión y demás) en un instante durante medio segundo y luego decide redirigir de nuevo al índice. página. Incluso los botones "Registrarse" e "Iniciar sesión" se muestran durante la misma cantidad de tiempo antes de ocultarse y el botón "Cerrar sesión" también tarda en mostrarse. ¿Por qué hay estos retrasos? ¿Hay alguna forma de eliminar estos retrasos y hacer que las acciones se realicen al instante?

Código de verificación de autenticación

 onAuthStateChanged(auth, (user) => { if(user){ const uid = user.uid; (window.location.pathname.split("/").pop() == 'login.php')?location.replace("index.php"):null; $(".logout").show(); $(".login").hide(); $(".register").hide(); } });
about 4 years ago · Juan Pablo Isaza
1 Respostas
Responde à pergunta

0

Cuando se carga la página, Firebase intenta restaurar el estado de autenticación del usuario a partir de la información que tiene en el almacenamiento local. Esto requiere que haga una llamada al servidor para verificar las credenciales y cosas como si la cuenta está deshabilitada. Esta llamada lleva algún tiempo, y solo una vez que se complete la llamada se llamará a onAuthStateChanged con el resultado.

Esto significa que el parpadeo breve que ve es bastante normal y no se puede evitar solo con la API de Firebase. Un truco que puede hacer es almacenar usted mismo un pequeño valor de token en el almacenamiento local y luego leerlo justo cuando se carga la página para determinar si es probable que el usuario sea autenticado. Michael Bleigh explicó esta técnica en su charla Google I/O Architecting Mobile Web Apps

Si bien no puede evitar el flash en todos los casos con esto, puede usarlo para evitar el flash para la mayoría de los usuarios de manera efectiva.

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