I have issue with express-session in node js and express 4. I set a session variable inside routes/index.js and is not available in app.js.But available on another route file users.js
var sess;
router.get('/setsession',function(req,res){
sess=req.session;
sess.username="safeer";
res.send("hi "+sess.username);
});
router.get('/getsession',function(req,res){
sess=req.session;
res.send("hi "+sess.username); //here session value available
});
var sess;
router.get('/session3',function(req,res){
sess=req.session;
res.send("hi "+sess.username); // here also session is available
});
var session = require('express-session');
app.use(session({secret: 'secret',saveUninitialized: true,resave: true}));
var sess;
app.get('/session1',function(req,res){
sess=req.session;
res.send("hi "+sess.username); //here session is undefined
});
app.use('/', routes);
app.use('/users', users);
Can anyone give me a solution please. ?
I suggest you set username in session:
In routes/index.js
router.get('/setsession',function(req,res){
req.session.username="safeer";
res.send("hi "+ req.session.username);
});
And in app.js
app.get('/session1',function(req,res){
res.send("hi "+ req.session.username); //get from session. Can be set in variable too
});