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

Woo-seok Choi님의 프로필 이미지
Woo-seok Choi

작성한 질문수

스프링 MVC 2편 - 백엔드 웹 개발 활용 기술

ArgumentResolver 활용

아규먼트 리졸버를 이용한 로그인 처리 관련 질문 입니다.

작성

·

632

1

안녕하세요. 두 가지 궁금한 점이 있는데요.

우선, 컨트롤러가 RequestBody 나 HttpEntity 로 파라미터를 받을때는 아규먼트 리졸버가 항상 메세지 컨버터를 사용했었는데요.

ArgumentResolver 강의에서는 아규먼트 리졸버가 세션으로 부터 Member 객체를 꺼내서 넘겨주는 시점에서 이미 컨트롤러에서 받는 Member 객체와 이미 타입이 일치하기 때문에 메세지 컨버터가 하는 역할은 여기서는 필요없다고 보면 될까요? 

두번째 질문은, 인터셉터에서 이미 로그인 체크를 해서 로그인이 안되었을 경우 로그인 페이지로 리다이렉션을 하고 있는데 컨트롤러내에서 굳이 loginMember == null 을 체크해서 리다이렉션을 다시 처리해 주어야 하는지 궁금합니다. 실무에서는 로그인이 필요한 요청 핸들러 메소드에서는 로그인 체크가 이미 인터셉터에서 처리 되고 비인증 사용자는 인터셉터에서 걸러져서 핸들러 어뎁터 까지 오지 않는게 바람직한 처리라고 보면 될까요?

답변 1

2

안녕하세요. Woo-seok Choi님, 공식 서포터즈 David입니다.

1. 네, 맞습니다. 컨버터를 필요로 하지 않기 때문에 사용하고 있지 않습니다. HttpEntityMethodProcessor클래스를 참고하시면 컨버터를 사용하는 경우 어떻게 처리하고 있는지 알 수 있으니 참고해주세요.

2. 굳이 핸들러 내에서 체크할 필요는 없습니다. 강의 흐름상 ArgumentResolver의 활용에 집중하고 있기 때문에 redirection을 위한 별도의 처리를 하진 않았습니다.

감사합니다.

Woo-seok Choi님의 프로필 이미지
Woo-seok Choi

작성한 질문수

질문하기