목표

mongoDB의 세션스토어에 express와 mongoose connection으로 연결되어 있을 때, 서버를 재시작하면 연결이 끊어진다. 이럴 때 connect-mongo를 사용하면 연결을 유지할 수 있다.

단, 모든 상황에서 가능한건 아니고, 이미 연결되어있는 상태에서 재시작할 때에만 가능하다

Document : https://www.npmjs.com/package/connect-mongo

Install

npm install connect-mongo

Usage

app.js

import session from 'express-session';
import mongoose from 'mongoose';
import MongoStore = 'connect-mongo';

const cookieStore = MongoStore(session); 
// 이제 세션을 이 저장소에 저장하게 된다

app.use(session({
    secret: 'secret',  // 이번 강의랑 아무 상관 없다
    store: new MongoStore({ mongooseConnection: mongoose.connection })
  // 저장소를 mongoose를 통해 몽고 DB와 연결해준다
}));

이렇게 해주면 새로운 저장소에 세션이 저장된다

이제 서버를 재시작해도 기존에 저장되어있던 세션은 그대로 남아 있을 것이다