从其他路由访问会话

时间:2018-01-22 01:05:02

标签: node.js express session authentication

大家好我尝试使用Express.js实现非常简单的身份验证。对为什么无法从其他路线读取会话感到困惑。这是我的代码:

router.post('/', function(req, res){
  var username = req.body.username;
  var password = req.body.password;
  var sess = req.session;
  var sql = "SELECT * FROM user WHERE username='" +username+ "' && password='" +password+"'";
  connection.query(sql, function(err, rows, field){
    if(err) throw err;
    if(rows[0]){
      console.log('Username: ', rows[0].username);

      var sessionObj = {
        username: username,
        role: rows[0].role,
        fullname: rows[0].nama_lengkap,
        email: rows[0].email
      };      
      sess.obj = sessionObj;
      res.render("../views/login/home", {person: sess.obj});
    }
    else{
      console.log('no data found');
    }

  });

我想从get路线调用它,但它不起作用。

1 个答案:

答案 0 :(得分:0)

而不是使用会话变量使用cookie作为结果,您将能够在前端访问它,并能够在下一个请求中将其发送回服务器