var connect = require('connect') var favicon = require('serve-favicon') var logger = require('morgan') var cookieParser = require('cookie-parser') var session = require('express-session') // var redis = require('connect-redis') // var RedisStore = redis(connect) var app = connect() var hour = 3600000 var sessionOpts = { key: 'myapp_sid', cookie: {maxAge: hour * 24, secure: true} } app // .use(favicon()) .use(cookieParser('keyboard cat')) .use(session(sessionOpts)) // .use(session({ store: new RedisStore({ prefix: 'sid' }) })) .use((req, res, next) => { var sess = req.session if (sess.id) { res.setHeader('Content-Type', 'text/html') res.write('

id: ' + sess.id + '

') res.write('

expires in: ' + (sess.cookie.maxAge / 1000) + '

') res.write('

httpOnly: ' + sess.cookie.httpOnly + '

') res.write('

path: ' + sess.cookie.path + '

') res.write('

domain: ' + sess.cookie.domain + '

') res.write('

secure: ' + sess.cookie.secure + '

') res.end() sess.views++ } else { sess.views = 1 res.end('welcome to the session demo . refreshw!') } // req.session.cookie.maxAge = 3000 }) .listen(3001)