堆栈:Mongo / Redis,Express和Node
我将我的会话设置为大多数其他Stack Overflow帖子所指向的会话。我正在使用Redis作为会话存储。这是我的会话设置:
app.use(session({
resave: true,
saveUninitialized: false,
cookie: {
maxAge: 60 * 1000 * 60 * 24 * 30 // 30 days
},
secret: config.sessionSecret,
store: new RedisStore({
url: config.redisDB,
auto_reconnect: true
})
}));
这是我app.js文件中app.use(flash());
之前的内容。
我唯一能想到的是我需要在我的路线文件中设置会话。但是多次建立会话似乎是错误的。我确实需要在以下设置会话和Flash的位置进行路由。
有什么想法吗?
错误消息:
req.flash() requires sessions
堆栈跟踪指向app.js的第55行,即res.locals.error = req.flash("error");
那是在我呼叫路线之前,但在我设置会话之后。如果我将其注释掉,则它指向所调用的路线。在这种情况下,索引路径为
。app.get('/', function(req, res) {
res.render('index.ejs'); // load the index.ejs file
});
如果我将res.render更改为res.send,则它发送的消息没有错误。