Node.js express和connect redis on store选项出错

Node.js express和connect redis on store选项出错,node.js,session,express,Node.js,Session,Express,控制台向我显示: TypeError:无法读取未定义的属性“userSession” 我确信这个错误是由“Redistore”对象引起的,但我不知道为什么,也不知道如何修复 我有什么错误吗 请帮帮我 问题出在Redistore配置中。端口设置应该是一个数字,如下所示: app.engine('html', ejs.renderFile) .set("views", __dirname + '/views') .use("/public", express.static(__dir

控制台向我显示:

TypeError:无法读取未定义的属性“userSession”

我确信这个错误是由“Redistore”对象引起的,但我不知道为什么,也不知道如何修复

我有什么错误吗

请帮帮我

问题出在Redistore配置中。端口设置应该是一个数字,如下所示:

app.engine('html', ejs.renderFile)
    .set("views", __dirname + '/views')
    .use("/public", express.static(__dirname + '/public'));

/*********************************************************************/
app.use(cookieParser());

app.use(session({
    store: new RedisStore({
        host: "127.0.0.1",
        port: "3636"
    }),
    secret: 'keyboard cat',
    resave: false,
    saveUninitialized: true
}));

app.use(function(req, res, next) {
    var userSession = req.session.userSession;

    if (!userSession) {
        userSession = req.session.userSession = '';
    }
    next();

});

/************************************************************************/
server.listen(8080);

app.get('/', function(req, res) {
    res.render('index2.html', {
        infoUser: req.session.userSession
    });
})

    .use(function(req, res, next) {
        res.redirect('/');
    });

如果这不能解决问题,您还应该确保3636是正确的端口。Redis默认使用6379。

谢谢你的回答,我更改了端口号,但没有解决我的问题。我的控制台也显示了同样的问题。TypeError:无法读取未定义的属性“userSession”。
app.use(session({
    store: new RedisStore({
        host: "localhost",
        port: 3636
    }),
    secret: 'keyboard cat',
    resave: false,
    saveUninitialized: true
}));