Express中使用session

1.安装express-session
npm install express-session --save-dev //注意-g无效
2.app.js
var session = require('express-session');

app.use(cookieParser()); //必须在此行下面添加
app.use(session({secret: 'recommand 128 bytes random string', // 建议使用 128 个字符的随机字符串
cookie: { maxAge: 20 * 60 * 1000 }, //cookie生存周期20*60秒
resave: true, //cookie之间的请求规则,假设每次登陆,就算会话存在也重新保存一次
saveUninitialized: true //强制保存未初始化的会话到存储器
})); //这些是写在app.js里面的

3.使用session
if(rs){
loginbean = {};
loginbean.id=rs._id;
loginbean.nicheng = rs.nicheng;
loginbean.role = rs.role;
req.session.loginbean = loginbean;
//res.send('登陆成功');
res.redirect('/'); //跳转回index页
}

4.ejs中识别session
res.locals.loginbean = req.session.loginbean;
ejs中
<% if(!loginbean) %>

5.注销:
router.get('/logout', function(req, res, next) {
delete req.session.loginbean;
res.redirect('/');
});

原文地址:https://www.cnblogs.com/yu-hailong/p/7439973.html