HomeAboutMeBlogGuest
© 2025 Sejin Cha. All rights reserved.
Built with Next.js, deployed on Vercel
🐣
프론트엔드 데브코스 4기 교육생
/
김나영1팀
김나영1팀
/
☕
커피챗
/
☕
커피챗 3주차
/
유저 정보 어디에서 처리하면 좋을지 고민입니다.

유저 정보 어디에서 처리하면 좋을지 고민입니다.

Person
Checkbox
Checkbox
OAuth를 통해 로그인 후
→ 백엔드에서 토근 받음
 
  1. 토큰 안에 user정보 + JWT 토큰 정보를 넣어서 두번 말아서 보관한다.
  1. JWT토큰 정보만 받는다.
 

로그인 시 토큰과 유저 정보 저장

  1. 유저 정보를 전역 상태에 저장하고 관리한다. (예민하지 않은 정보 선에서… 유저 ID 정도)
  1. 유저 정보를 쿠키 등에 저장한다.
  1. 유저 정보를 필요할 때마다 validation API로 요청하고 결과로 유효한 유저 정보를 사용한다(매 동작마다 호출할텐데 로드가 너무 많지 않을지)
  1. 유저 정보와 토큰이 담긴 쿠키를 httpsOnly와 secure 옵션을 설정해두고, NextJS 백엔드에서만 읽고 쓰게 한다. 필요한 정보가 클라이언트에서 요청될 때에만 nextjs backend에서 처리해준다
    1. notion image
 

현재 로그인 여부 확인

  1. 매번 위 과정을 통해 validation된 현재 유저가 있으면 로그인 상태로 간주한다.- api call
    1. serverside에서 validation을 요청하여 유효하면 로그인으로 간주
    2. 유효하지 않으면 로그아웃 상태로 간주 또는 로그인 페이지로 라우팅
  1. context API를 사용한 wrapper로 감싸서 유저 정보 및 로그인 여부를 state로 사용한다.