У меня есть веб-приложение, и я использую Firebase аутентификацию для входа / регистрации наших пользователей.
В прошлом я использовал Passport для входа в мое приложение, которое работает, но вы должны поддерживать свою собственную базу данных и безопасность, бла-бла ... но я могу контролировать, когда мой пользователь может посетить страницу после входа в систему через Passport. используя промежуточное программное обеспечение, как это -
// isAuthentcated is my middleware on server side.
app.get('/home', isAuthenticated,(req,res)=>{
res.render('home');
});
Как я могу сделать то же самое, используя Firebase, потому что нет никакого механизма, чтобы сделать это. Я читал разные ответы на stackoverflow, и большинство людей предлагают что-то вроде ниже, что, очевидно, не безопасно. Кто угодно может просто набрать home. html и перейти на страницу.
firebase.auth().onAuthStateChanged(user => {
if(user) {
window.location = 'home.html'; //After successful login, user will be redirected to home.html
}
});
Хотя я думал об использовании firebase-admin sdk верификация токена и пытался следовать предложению здесь , но я не знаю, как это можно полезно сделать это на стороне сервера. У вас есть предложения? Как вы перенаправляете пользователя на новую страницу? ajax запрос отправки / получения от клиента на маршрут «/ home» с заголовком, содержащим «токен на предъявителя», только проверяет токен, но не перенаправляет пользователя, потому что это вызов ajax, предназначенный для обновления часть страницы.
Теперь вопрос на самом деле: возможно ли это сделать с помощью аутентификации на основе firebase?