sessionMiddleware.ts 590 B

12345678910111213141516171819
  1. import session from 'express-session';
  2. import config from '../../config';
  3. import SessionFileStore from 'session-file-store';
  4. import { COOKIE_MAX_AGE, __prod__ } from '../../config/constants/constants';
  5. const getSessionMiddleware = async (): Promise<any> => {
  6. const FileStore = SessionFileStore(session);
  7. return session({
  8. name: 'qid',
  9. store: new FileStore(),
  10. cookie: { maxAge: COOKIE_MAX_AGE, secure: __prod__, sameSite: 'lax', httpOnly: true },
  11. secret: config.JWT_SECRET,
  12. resave: false,
  13. saveUninitialized: false,
  14. });
  15. };
  16. export default getSessionMiddleware;