Req.session未定义快递4和Redis商店,快递会话

时间:2016-01-03 21:31:32

标签: node.js session express redis express-session

似乎无法弄清楚如何将Redis商店用于Express 4的会话,一些示例代码如下所示:

var express       = require('express');
var app           = express();
var cookieParser  = require('cookie-parser');
var bodyParser    = require('body-parser');
var session       = require('express-session');
var RedisStore    = require('connect-redis')(session);

app.use(cookieParser());
app.use(session({
    store: new RedisStore({
        host: 'localhost',
        port: 6379,
    }),
    secret: 'secret',
    resave: false,
    saveUninitialized: true
}));
app.get('/', function (req, res) {
    console.log(req.session); // undefined! :(
});
app.listen(3000);

正如您所看到的,上面的req.session似乎总是未定义,显然无法在其中存储任何变量......

2 个答案:

答案 0 :(得分:0)

当然,最令人沮丧的问题有最简单的答案...... Redis客户端从未安装过。未来任何人的链接 - http://redis.io/topics/quickstart:facepalm:

答案 1 :(得分:0)

看起来你忘了开始redis。尝试在服务器cli上输入service redis-server start。希望它有所帮助:)