#javascript #firebase #firebase-authentication
# #javascript #firebase #firebase-аутентификация
Вопрос:
Когда пользователь заходит на мою страницу example.com
, я определяю, есть ли у него активный сеанс. Если это так, я перенаправляю его на example.com/dashboard
. Мой код:
<head>
. . . .
<script src="https://www.gstatic.com/firebasejs/7.14.3/firebase-app.js"></script>
<script src="https://www.gstatic.com/firebasejs/7.14.3/firebase-auth.js"></script>
<script src="assets/js/config.js"></script>
<script>
firebase.auth().onAuthStateChanged( function( user ){
if( user ){ window.location = 'dashboard'; }
});
</script>
</head>
Это работает нормально, но очень медленно. Сначала загружается страница, а затем выполняется перенаправление. Я хочу, чтобы это произошло немедленно
ожидаемый результат (miro.com ): https://streamable.com/y6z7mc
Ответ №1:
Обратный onAuthStateChanged
вызов запускается не сразу, и вы ничего не можете сделать, чтобы ускорить это. Просто требуется время для инициализации auth SDK, попытки загрузить токен пользователя и его проверки. Вы можете прочитать больше о том, как это работает, в этом сообщении в блоге.
Вместо этого вы можете показать какой-то индикатор загрузки или экран ожидания, пока пользователь ожидает завершения этого процесса.