728x90
문제
SpringSecurity를 이용한 JWT인증 애플리케이션 작성 후, Postman을 이용해 로그인 인증 요청을 보낼 때 올바른 요청이 오지 않는다. (이미지 참고)
아래 이미지와 같이 회원 등록(회원가입)은 정상적으로 작동한다
이후, 등록한 회원정보로 로그인을 실행할때, 올바른 response가 오지 않는다.
원인
1. 오탈자
2. 구현 클래스 내 구현 메서드에 @Override 애너테이션을 빼먹은 상황
해결방법 및 올바른 출력결과
UsernamePasswordAuthenticationFilter 클래스의 구현 클래스인 JwtAuthenticationFilter 클래스를 다시 한 번 확인
특히, Postman상으로 나오도록 설정해둔 값이 있는 successfulAuthentication 메서드를 꼭 확인하자
@Override
protected void successfulAuthentication (HttpServletRequest request, HttpServletResponse response,
FilterChain chain, Authentication authResult) {
Member member = (Member) authResult.getPrincipal(); // ??
String accessToken = delegateAccessToken(member);
String refreshToken = delegateRefreshToken(member);
response.setHeader("Authorization", "Bearer "+accessToken);
response.setHeader("Refresh", refreshToken);
}
728x90