처럼 로그인 시 바로 jwt 토큰 해석 후 생성된 username~ 토큰 정보가 security에 있고, 이를 @CurrentUser와 같은 어노테이션을 만들어서 바로 User or userDto 에 매핑할 수 있음. 이러면 controller단에서 유효한 email 유저인지 확인해줄 필요가 없어짐.
UserPrincipal을 따로 만들고 customUserService의 loadUser 부분에서 이를 반환하게 해서 맞춰보려 했으나 실패.
그래서 일단은 아래처럼 그냥 Principal로 User를 가져와야 함.
@ApiOperation(value = "currentuser 테스트", notes = "어노테이션이 잘 되는지 확인하기")
@GetMapping("/test")
public ResponseEntity getUserProfile(Principal p) {
User user = u.findUserByEmail(p.getName()).get(); // p.getname() == email 정보
return ResponseEntity.ok(user.getUsername());
}
https://freedeveloper.tistory.com/217
처럼 로그인 시 바로 jwt 토큰 해석 후 생성된 username~ 토큰 정보가 security에 있고, 이를 @CurrentUser와 같은 어노테이션을 만들어서 바로 User or userDto 에 매핑할 수 있음. 이러면 controller단에서 유효한 email 유저인지 확인해줄 필요가 없어짐.
UserPrincipal을 따로 만들고 customUserService의 loadUser 부분에서 이를 반환하게 해서 맞춰보려 했으나 실패.
그래서 일단은 아래처럼 그냥 Principal로 User를 가져와야 함.
우선순위는 나중으로 예상. 필요 시 구현하기