From 5e55eeb46283979ec63481421a76c028defb8c17 Mon Sep 17 00:00:00 2001 From: banjjoknim Date: Tue, 8 Mar 2022 12:56:29 +0900 Subject: [PATCH] =?UTF-8?q?style(user)=20:=20=EB=93=A4=EC=97=AC=EC=93=B0?= =?UTF-8?q?=EA=B8=B0=20=EB=B3=80=EA=B2=BD?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../com/banjjoknim/playground/domain/user/UserController.kt | 12 +++--------- 1 file changed, 3 insertions(+), 9 deletions(-) diff --git a/놀이터(예제 코드 작성)/spring-security/src/main/kotlin/com/banjjoknim/playground/domain/user/UserController.kt b/놀이터(예제 코드 작성)/spring-security/src/main/kotlin/com/banjjoknim/playground/domain/user/UserController.kt index f10fd19..b4dd53d 100644 --- a/놀이터(예제 코드 작성)/spring-security/src/main/kotlin/com/banjjoknim/playground/domain/user/UserController.kt +++ b/놀이터(예제 코드 작성)/spring-security/src/main/kotlin/com/banjjoknim/playground/domain/user/UserController.kt @@ -64,16 +64,13 @@ class UserController { * @see PrincipalDetailsService * */ - @GetMapping("/login") // OAuth2 로그인 및 일반 로그인 모두 principalDetails 로 세션 정보를 얻어올 수 있다. + @GetMapping("/login") // OAuth2 로그인 및 일반 로그인 모두 principalDetails 로 세션 정보를 얻어올 수 있다(다운 캐스팅을 하지 않아도 된다!). fun login(@AuthenticationPrincipal principalDetails: PrincipalDetails) { // DI(의존성 주입) println("principalDetailsUser : ${principalDetails.user}") } @GetMapping("/test/login") - fun testLogin( - authentication: Authentication, - @AuthenticationPrincipal userDetails: UserDetails - ) { // DI(의존성 주입) + fun testLogin(authentication: Authentication, @AuthenticationPrincipal userDetails: UserDetails) { // DI(의존성 주입) val principalDetailsFromAuthentication = authentication.principal as PrincipalDetails // 다운 캐스팅 println("principalDetailsFromAuthentication : ${principalDetailsFromAuthentication.user}") println("principalDetailsFromAuthentication : ${principalDetailsFromAuthentication.username}") @@ -83,10 +80,7 @@ class UserController { } @GetMapping("/test/oauth2/login") - fun testOAuth2Login( - authentication: Authentication, - @AuthenticationPrincipal oauth: OAuth2User - ) { // DI(의존성 주입) + fun testOAuth2Login(authentication: Authentication, @AuthenticationPrincipal oauth: OAuth2User) { // DI(의존성 주입) val oAuth2User = authentication.principal as OAuth2User // 다운 캐스팅 println("authentication : ${oAuth2User.attributes}") // OAuth2Service 의 super.loadUser(userRequest).attributes 와 같다. println("oAuth2User : ${oauth.attributes}")