节点快速会话不起作用。为下一个请求获取req.session.user undefined

时间:2016-04-28 09:20:06

标签: node.js session angular express-session

app.use(bodyParser.urlencoded({
    extended: true
}));
app.use(bodyParser.json());
app.use(express_session({
    secret: 'abcdefg',
    proxy: true,
    resave: true,
    saveUninitialized: true,
}));

app.post("/login", function(req, res, next) {

                    var session = req.session;
                    session.user = 'dadsvadsvhaha';

});

这是我的代码。我之前以同样的方式使用过它。但现在它无法正常工作,无法弄明白。

1 个答案:

答案 0 :(得分:0)

我试过以下,对我来说很好。它只是将值增加到request.session.views变量(如果存在)或设置request.session.views = 1

// Use the session middleware
app.use(session({ secret: 'keyboard cat', cookie: { maxAge: 60000 }}))

// Access the session as req.session
app.get('/', function(req, res, next) {
var sess = req.session
if (sess.views) {
    sess.views++
    res.setHeader('Content-Type', 'text/html')
    res.write('<p>views: ' + sess.views + '</p>')
    res.write('<p>expires in: ' + (sess.cookie.maxAge / 1000) + 's</p>')
    res.end()
} else {
    sess.views = 1
    res.end('welcome to the session demo. refresh!')
}});

您使用的是哪个版本的Node.J?