UNPKG

connect-caminte

Version:

CrossDB session store for Connect and ExpressJS

64 lines (60 loc) 1.72 kB
/** * * @revision $Id: mysql_example.js 2013-10-08 04:54:16 Aleksey $ * @created 2013-10-08 04:54:16 * @category Express Helpers * @package connect-caminte * @version 0.0.1 * @copyright Copyright (c) 2009-2013 - All rights reserved. * @license MIT License * @author Alexey Gordeyev IK <aleksej@gordejev.lv> * @link http://www.gordejev.lv/ * * Created by init script * App based on TrinteJS MVC framework * TrinteJS homepage http://www.trintejs.com */ var express = require('express'); var expressSession = require('express-session'); var cookieParser = require('cookie-parser'); var CaminteStore = require("./../"); var secret = "feb722690aeccfa92ca9ee6fdf06e55a"; var maxAge = 300000; var SessionStore = CaminteStore(expressSession); var app = express(); app.use(cookieParser(secret)); app.use(expressSession({ cookie: { maxAge: maxAge }, key: 'caminte', secret: secret, saveUninitialized: true, resave: true, store: new SessionStore({ driver: 'mysql', collection: 'session', db: { host: "127.0.0.1", port: "3306", username: "test", password: "test", database: "test" }, clear_interval: 60, secret: secret, maxAge: maxAge }) })); app.get('/', function (req, res, next) { var sess = req.session; if (sess.views) { res.send('<p>views: ' + sess.views + '</p>' + '<p>expires in: ' + (sess.cookie.maxAge / 1000) + 's</p>'); sess.views++; } else { sess.views = 1; res.send('welcome to the session demo. refresh!'); } }); app.listen(3500);