2024-Hansung-Capstone / ProjectJ-Backend

MIT License
2 stars 1 forks source link

로그인된 현재 사용자의 id값을 불러오는 방법 #3

Open ssarisong opened 9 months ago

ssarisong commented 9 months ago

샘플코드

스크린샷 2024-02-12 23-50-48

UseGuard

현재 사용자는 JWT를 통해 로그인시 토큰을 부여받고 해당 토큰을 통해 로그인 상태를 확인하고 있음. @UseGuards(gqlAccessGuard) 데코레이터를 통해 해당 API를 JWT 토큰이 있는 사용자만 사용하게 할 수 있음. (gqlAccessGuard는 "users/guards/gql-auth.guard" 경로에 제가 구현한 클래스)

Context

JWT 토큰에는 사용자의 id값이 숨어있음. 인자값으로 @Context() context: IContext를 인자로 받고 context.req.user.id 이렇게 context에 저장되어 있는 현재 로그인된 사용자의 id값을 가져올 수 있음. (IContext는 "users/interfaces/user-service.interface" 경로에 제가 구현한 클래스)