我正在尝试在我的Express应用程序中使用redis进行会话。
我执行以下操作:
var express = require('express'); var RedisStore = require('connect-redis')(express); app.configure('development', function(){ app.use(express.session({ secret: "password", store: new RedisStore({ host: "127.0.0.1", port: "6379", db: "mydb" }) }));
稍后,在我的应用程序中,如果执行以下操作:
var whatever = req.session.someProperty;
我得到:
无法读取未定义的属性“ someProperty”
这表明req.session是未定义的 (我可以从config部分的console.log条目中看到)
我肯定有redis运行,并且可以看到我的应用最初连接到它(使用redis-cli监视器)
看起来您失踪了:
app.use(express.cookieParser());
app.use(express.session(...));打电话之前。
app.use(express.session(...));
看这里。