我正在使用client-sessions这是我的代码:
app.post("/login", (req, res)=>{
if (!req.session.activeUser){
User.findOne({username:req.body.username}).then(doc=>{
req.session.activeUser = req.body.username
res.send(req.session.activeUser + " Logged in successfully")
}).catch(e=>{
res.send(e)
})
}else {
res.redirect("/")
}
})
app.get("/logout", (req, res)=>{
req.session.reset()
res.redirect("/")
})
app.get("/online", (req, res)=>{
res.send(JSON.stringify(req.session))
console.log(JSON.stringify(req.session))
})
/login
的响应效果很好,但控制器/online
会返回一个空对象。
我已经尝试了express-session并遇到了同样的问题
这是我的配置:
app.use(sessions({
cookieName: "session",
secret: "root",
duration: 30 * 60 * 1000,
activeDuration: 1000 * 60 * 5
}))
答案 0 :(得分:0)
确保在会话全局中间件中将cookieName属性设置为“session”。
答案 1 :(得分:0)
我认为您需要检查“要求”部分,也许您已拼错会话。