inflearn logo
강의

강의

N
챌린지

챌린지

멘토링

멘토링

N
클립

클립

로드맵

로드맵

지식공유

Slack 클론 코딩[백엔드 with NestJS + TypeORM]

local serializer, guard

로그인 테스트 중 발생했던 express-session 관련 질문입니다!

해결된 질문

781

dev kim

작성한 질문수 12

0

안녕하세요.

로그인 코드 작성 완료 후 테스트로 포스맨을 호출했을 때 2가지 오류가 발생했었습니다.

  1. Error: Login sessions require session support. Did you forget to use express-session middleware?

  2. secret option required for sessions

 

1번은 express-session 아래에 passport를 작성하라는 것 같아서 강사님의 깃 보고 아래 코드를 추가했었고

  app.use(cookieParser());
  app.use(
    session({
      resave: false,
      saveUninitialized: false,
      secret: process.env.COOKIE_SECRET,
      cookie: {
        httpOnly: true,
      },
    }),
  );

 

2번은 검색해보니 secret 설정을 하면 된다고 해서 .env 파일에 COOKIE_SECRET에 대한 값을 넣어줘서 1,2번 전부 해결했었습니다.

 

다만, 강의에는 이미 들어가있던 부분이였던 아래 코드와 passport.session을 같이 사용하는 이유가 궁금합니다! passport.session만 사용하니 express session의 미들웨어를 사용하라는 것 같았고, express session을 찾아보니 express session만 사용해서 로그인을 구현하기도 하는 것 같았습니다.

app.use(cookieParser());
  app.use(
    session({
      resave: false,
      saveUninitialized: false,
      secret: process.env.COOKIE_SECRET,
      cookie: {
        httpOnly: true,
      },
    }),
  );

 

그리고 secret는 express session의 암호로만 알고 있어도 되는걸까요? .env 파일에 제가 임으로 설정한 암호를 예를들어 COOKIE_SECRET=12314 이런식으로 작성해놓는게 맞는건가요??

 

++ 그리고 수업 별개로 추가 질문 사항이 있습니다!

현재 강의에서 사용되는거는 typeORM 0.3 버전인가요? 실무에서는 0.2 버전보다 0.3으로 많이 사용되는건가요??

node.js express nestjs typeorm

답변 1

1

제로초(조현영)

express-session은 세션쿠키(connect.sid와 req.session)를 구현해주는 것이고 passport.session은 패스포트 로그인 시 세션을 세팅하는 것이라 둘 다 필요합니다. COOKIE_SECRET은 쿠키를 암호화하는 키라서 아무 값이나 하셔도 됩니다.

typeorm은 0.3 쓰시면 됩니다. 0.3버전이 있는데 0.2버전을 쓸 이유는 없습니다.

0

dev kim

아하 넵 답변 감사합니다!

강의자료는 어디서 다운받나요?

0

115

4

질문 있습니다.

0

299

3

(강의 5:42 질문) providers를 통한 여러 개의 인스턴스 생성 & exports 통한 싱글톤 생성

0

154

2

코드 편집기 확장 프로그램

0

209

2

(질문)비밀 저장소에 접근하기 위한 인증 정보는 로컬 .env에 저장하는지?

0

147

2

(질문)외부 저장소를 통한 환경변수 불러오기 비동기 질문

0

170

3

로그인을 해도 LoggedInGuard쪽에서 false값이 나옵니다.

0

152

2

로그인방법이 고민됩니다.

0

190

2

yarn seed 명령어 실행 시 데이터 삽입 안됨

0

297

4

yarn run db:create 시에 발생하는 데코레이터 오류

0

242

2

npm run db:create 시에 발생하는 decorating 오류

0

232

2

RxJS 디버깅 질문 있습니다.

0

189

3

CacheManager에 대해 질문 있습니다.

0

175

2

로깅은 어떻게 하는게 효율적일까요?

0

224

1

CORS 질문 있습니다.

0

418

2

쿠키 옵션에 대해서 질문 있습니다.

0

184

2

로그아웃 요청이 403 forbidden 에러가 나는데 왜그런걸까요??

0

449

1

401 unauthorized문제

0

289

1

가드의 장점에 대해서 질문이 있습니다.

0

225

1

로그 관리에 대해 질문 있습니다.

0

252

2

CORS 에러 질문 있습니다.

0

319

2

배포 환경 DB 연결 질문 있습니다.

0

411

2

socket io 미 연결 문제 (nest & flutter)

1

1156

3

no elements in sequence 에러 관해서 질문이 있습니다.

0

454

1