мы работаем над проектом для нашего курса программирования. У нас очень маленькая социальная платформа, где вы можете зарегистрироваться, войти, создать профиль, просмотреть события и выйти.
Итак, я установил переменную сеанса для входа в систему, но я также хочу, чтобы люди, которые регистрируются, мгновенно входили в систему и перенаправлялись на сайт профиля. Так что я должен установить еще одну сессию в app.post, я думаю, но я совершенно не представляю, как это сделать (потому что я чертов начинающий) ... Кто-нибудь может помочь? Это код до сих пор:
//------------Sessionvariables---------------//
app.get('/', requiresLogin, function(req, res) {
res.render('home', {
'username': req.session.user.name
});
});
app.post('/sendLogin', function(req, res) {
//in Datenbank gucken
const user = req.body["username"];
const password = req.body["password"];
db.get(`SELECT * FROM users WHERE username='${user}'`, function(err, row) {
if (row != undefined) {
if(password == row.password) {
req.session['user'] = user;
res.redirect('/home');
}else{
res.redirect('/loginerror');
}
}else{
res.redirect('/loginerror');
}
if(err){
console.error(err.message);
}
});
});
app.get('/logout', function(req, res){
req.session.destroy(function (err) {
if (err) return next(err)
req.session = null;
res.redirect('/start-login');
});
});
// Registration
app.post('/registration', function(req, res) {
const { email, password, username, domicile } = req.body;
// validation
db.run(`INSERT INTO users(email,password,username,domicile) VALUES(?, ?, ?, ?)`, [email, password, username, domicile], function(err) {
if (err) {
return console.log(err.message);
}
return res.redirect('/edit_profile');
});
});
Я знаю, что мне нужно записать сессию в app.post / registration - Part, но я не знаю, как это записать. Я использую Node js, Express и sqlite3 ...
Спасибо !!