Разъем.ввод-вывод и перенаправление / Сохранение переменной сеанса в браузере после входа в систему

#javascript #node.js #websocket #socket.io #session-variables

Вопрос:

Я в основном хочу сохранить имя пользователя для входа в сеансовые файлы cookie с помощью узла и Socket.io

Вот код : (выполняется после входа в систему в /auth)

 app.post('/auth', function(request, response) {
var username = request.body.username
var password = request.body.password;
        if (username amp;amp; password) {
            connection.query('SELECT * FROM accounts WHERE username = ?', [username], function(error, results, fields) {
                if (results.length > 0) {
                    let t = new Promise(function(resolve, reject) {
                        bcrypt.compare(password, results[0].password, function(err, res) {
                            if (err) {
                                 reject(err);
                            } else {
                                 resolve(res);
                            }
                        });
                    });
                    t.then((pswRes)=>{
                        if (pswRes==true){
                            io.emit("logged", request.body.username); //HERE <---
                            request.session.loggedin = true; //doesnt register in cookies (browser)
                            request.session.username = username; //doesnt register in cookies (browser)
                            console.log(request.session.username);
                            //console.log(t); 
                            return response.redirect('/home.html'); //HERE <---
                            }else{
                            return response.redirect('/log.html');
                            }
                    }).catch((pswRes)=>{
                        console.log("error" pswRes);
                    });
                      
                } else {
                    return response.redirect('/log.html');
                }           
                //response.end();
            });
        } else {
           // response.send('Please enter Username and Password!');
           console.log("3333");
            //response.end();
        }});
 

(проверьте комментарии)

Я пытаюсь передать аргументы с помощью эмиссии и уловки на home.html куда они перенаправляются, затем для размещения переменной сеанса с

sessionStorage.setItem(«имя пользователя», имя пользователя)

Как я могу это сделать ? Альтернативные методы тоже ценятся !