-
[이력서 꾸미기] 마지막을 향해가는 이력서 꾸미기개발/프로젝트2(유데미) 2023. 5. 22. 15:22
이제 deploy만을 앞두고 있는 지금!
또 문제가 있어서 블로그를 쓰게 되었다
const session = require("express-session"); const MongoDBStore = require("connect-mongo")(session); const store = new MongoDBStore({ url: dbUrl, secret: "secret", touchAfter: 24 * 60 * 60, });
기본 저장소 대신 몽고 저장소를 쓰기 위해 connect-mongo를 쓰려고 하는데
강의에서는 이런 코드로 connect-mongo를 쓰라고 나와있는데
나는 아마도 몽고 버전이 강의보다 높았는지 이대로 실행하면
자꾸 class constructor MongoStore cannot be invoked without 'new' ... 하는 에러가 났다
찾아보니까 npm 페이지에서 connect-mongo 를 찾아보면
권장되는 코드는
const session = require('express-session'); const MongoStore = require('connect-mongo'); app.use(session({ secret: 'foo', store: MongoStore.create(options) }));
이렇게 쓰라고 나와있었다
이것은 아마도 mongo 새버전에서 쓸 수 있는 것 같았다
그래서 new 뒤에 MongoDBStore 뒤에 .create를 붙여보기도 하고
new를 떼보기도 하고 각각 실행을 했는데 똑같은 에러가 계속 났다
구글링도 해보고 이것저것 찾아보고 내 스스로 권장되는 코드에 맞춰서 해보려고 했지만
해결이 안돼서 어쩔 수 없는 방편으로
이상적인 해결법은 아니겠지만 몽고 버전을 그냥 낮췄다
npm uninstall connect-mongo npm i connect-mongo@3
이렇게 했더니 처음에 유데미에서 강의에 있는 코드대로 해도 실행이 되었다
배포까지 잘 가보자
'개발 > 프로젝트2(유데미)' 카테고리의 다른 글
[이력서 꾸미기] React 완벽 가이드 코딩연습1 (0) 2023.07.13 [이력서 꾸미기] flyio로 배포하기 (1) 2023.05.25 [이력서 꾸미기] Geocode 오류때문에 얼마나 시간을 허비했는지 (0) 2023.05.02 [이력서 꾸미기] Mongoose 에러 해결하기 (0) 2023.03.15 [이력서 꾸미기] EJS(Embedded JavaScript Templating) (0) 2023.03.13