Я могу ошибаться, но не могли бы вы проверить, существует ли ошибка, существует ли ошибка, и если нет, то войдите в систему?
firebase.auth().signInWithEmailAndPassword(userEmail, userPass).catch(function(error) {
if (error) {
}
else{
//login
}
});
Я считаю, что правильный способ сделать это - сделать следующее.
firebase.auth().onAuthStateChanged(function(user) {
if (user) {
//user exists and is logged in
//redirect Home
} else {
// User is signed out.
// redirect to login
}
});
Если вы выполняете вышеуказанную проверку на каждой странице, но не перенаправляете в состоянии true
, ваш сайт будет в основном защищен паролем. Каждый раз, когда пользователь, который не вошел в систему (или не прошел проверку подлинности), попытается получить доступ к странице, он будет перенаправлять их на вход в систему до тех пор, пока они не будут. Я использую «защищенный», потому что я не знаю, является ли это правильным способом защиты паролем сайта, но он работает на внешнем интерфейсе. Если они аутентифицированы, то ничего не меняется, и они могут видеть сайт - вы также можете безопасно вызывать любые user
переменные, не будучи null
.