app.use(expressSession({
resave: true,// 强制更新 session
saveUninitialized: false,// 设置为 false,强制创建一个 session,即使用户未登录
secret: 'session-cookie',
// store: new MongoStore({// 将 session 存储到 mongodb
// url: 'mongodb://localhost:27017/session-cookie'// mongodb 地址
// }),
// cookie: {maxAge: 1000 * 60 * 60}
}));
var express = require('express');
var router = express.Router();
/* GET users listing. */
router.get('/', function(req, res, next) {
if (req.session.user) {
res.send('login');
} else {
res.send('no login');
}
});
router.post('/login', function (req, res, next) {
console.log(req.session);
req.session.user = req.body.user;
res.send(req.session.user);
});
module.exports = router;
关闭浏览器后重新打开还是呈现登录状态,是缓存的原因吗? 理论上 cookie 存放在浏览器内存中,关闭浏览器以后 cookie 就消失了
一开始的实验也验证了这个理论,重复多次后就出现相反的现象(关闭浏览器后重新打开还是呈现登录状态),是缓存吗?