В моем приложении у меня есть панель управления администратора и проверяется, вошел ли пользователь в систему или нет, что выглядит так.Аутентификация Firebase перенаправляется при входе в систему с помощью express.js
app.get('/acp', function (req, res) {
var user = firebase.auth().currentUser;
if (user) {
// Logged in
res.send('Hello world');
} else {
// Not logged in
res.redirect('/admin');
}
});
И когда пользователь не вошел в систему, он будет перенаправлен на странице администратора входа в систему, которая работает отлично!
Проблема не в том, как можно перенаправить на панели управления администратора, когда пользователь вошел в систему.
app.get('/admin', function (req, res) {
res.sendFile(__dirname + '/public/admin.html');
});
app.post('/admin', function (req, res) {
const email = req.body.email;
const password = req.body.password;
firebase.auth().signInWithEmailAndPassword(email, password).catch(function(error) {
var errorCode = error.code;
var errorMessage = error.message;
});
res.redirect('/acp'); // the problem
});
Я пытался искать обратного вызова на Google, но нет результата.
Вы спасли мою жизнь, спасибо. – enucar
Не беспокойтесь. Кроме того, ваше использование методов auth Firebase API немного любопытно. Похоже, что у вас будет только один администратор с подписью и если есть встроенный администратор, похоже, что кто-то сможет получить доступ к маршруту администратора. Если вы не приняли это решение, теперь самое время подумать об этом. – cartant
Вы правы. Я просто проверил на своем телефоне, и я могу получить доступ к панели управления администратора. Каков наилучший способ сделать это? Можете ли вы дать мне ссылку или объяснить, отредактировав свое сообщение выше? Самую малость. – enucar