[Error Log] passport 로그인 유지

Yeongsan Son·2021년 7월 31일
0

passport를 사용해 로그인 상태를 유지하는 작업을 하려고 코드를 짜고, 브라우저를 통해서 로그인이 유지 되는지 실행해 봤을때, 다음과 같은 오류가 발생했다.



_context11.t0.reponse is undefined라는 처음 보는 오류가 로깅되서 당황스러웠다.

어쨋든, 로그인 상태를 유지하기 위해 서버로 GET 요청을 보내는 과정에서 오류가 발생했음을 확인할 수 있어서, 서버 로그를 확인해 보았다.

서버 로그를 확인해 보니, 다음과 같은 에러 메시지를 확인할 수 있었다.



유저 관련 라우터에서 user 데이터가 undefined로 들어가고 있음을 확인했고, 바로 유저 라우터를 확인해봤다.



유저 라우터를 확인해보니, 유저 테이블을 조회하는 조건 부분에서 user.id에 접근할 수 없음을 확인했다.

passport를 통해서 로그인을 유지하게되면, 각 요청마다 deserializeUser 함수가 실행되면서 request에 유저 정보를 생성하기 때문에, req.user로 접근해야 유저의 정보를 확인할 수 있었다.

해당 조건 부분을 id: req.user.id로 수정하니, 유저 정보를 지속적으로 가지고 와서 성공적으로 로그인을 유지할 수 있었다.

profile
매몰되지 않는 개발자가 되자

0개의 댓글