express-session
でのセッション管理はメモリリークなどの問題よりproduction
では非推奨とのことなのでconnect-mongo
でセッション管理をしてみた。
connect-mongo
とmongoose
をインストール。
npm i --save connect-mongo
npm i --save mongoose
使い方。簡単。
session = require 'express-session' MongoStore = require('connect-mongo') session mongoose = require 'mongoose' mongoose.connect 'mongodb://localhost:port/database'
app.use session secret: 'keyboard cat' resave: false saveUninitialized: true cookie: { maxAge: 2 * 60 * 60 * 1000 } store: new MongoStore { mongooseConnection: mongoose.connection }
openshiftの場合は以下のようにするらしい。少しはまった。
mongoose.connect process.env.OPENSHIFT_MONGODB_DB_URL + process.env.OPENSHIFT_APP_NAME