인프런 커뮤니티 질문&답변

purnsup90님의 프로필 이미지

작성한 질문수

[코드팩토리] [초급] NestJS REST API 백엔드 완전 정복 마스터 클래스 - NestJS Core

AccessTokenGuard 적용해보기

포스트 컨트롤러에서 UseGuard를 추가하면 디펜던시 에러가 나타납니다.

23.11.17 18:14 작성

·

688

4

영상에서는 단순히 포스트 컨트롤러에서 @UseGuards(AccessTokenGuard)를 추가한 후 잘 작동하는 것 같은데 저는 디펜던시 에러가 나타나네요..

ERROR [ExceptionHandler] Nest can't resolve dependencies of the RefreshTokenGuard (?, UsersService). Please make sure that the argument AuthService at index [0] is available in the PostsModule context.

디펜던시 에러 해결하는 강의를 다시 보고 포스트 모듈에서 필요한 부분들을 추가하여 해결은 했습니다.

AuthService, UsersService와 JwtModule.register({}), UsersModel까지 추가해주니까 영상처럼 토큰을 보내줬을 때 포스트 기능이 잘 작동합니다..

궁금한 것은 영상에서는 포스트 모듈에 별다른 수정 없이 단순히 포스트 컨트롤러에서 @UseGuards만 추가해도 잘 작동하는 것 같은데.. 저는 왜 포스트 모듈에서 필요한 부분을 추가해 주어야 했는지 모르겠네요.. 제가 놓친 부분이 있었을까요..?

 

감사합니다.

답변 2

6

jhreplay.lee님의 프로필 이미지

2023. 11. 18. 10:10

저도 강의만 따라갈 때는 AccessTokenGuard적용 과정에서 동일한 Dependency 에러가 났는데 비슷한 방법으로 해결했습니다.

https://github.com/juan-rybczinski/cf_sns/commit/3c67de7e823edebce9771e4d9292786b65bf982c

 

강사님께서는 아마 이전 내용에서 미리 적용하거나 하셨던 것 같아요.

0

코드팩토리님의 프로필 이미지
코드팩토리
지식공유자

2023. 11. 20. 09:12

안녕하세요!

말씀하신대로 Dependency 추가를 해주셔야 합니다!

만약에 강의에서 보여주지 않았다면 실수로 편집 해버렸을 수도 있을 것 같습니다.

강의 초반에 알려드린대로 해당 에러는 NestJS에서 많이 발생하는 에러로 에러 메세지대로 필요한 디펜던시를 추가만 해주면 해결 할 수 있는 문제입니다.

감사합니다!