Spring boot kim's cafe/oauth로그인

Springboot 구글로그인!(3) with interface

디비드킴 2021. 6. 16. 20:52

map에서 꺼내는 key를 보자

자 구글은 /email/name/sub로 꺼내는 형식인데 

페이스북/네이버/카카오도 모두 구글과 같을까?

아닐 확률이 크고 또 "google"때문에 

다른 플랫폼 로그인도 모두 google로 들어가게 된다

 

그렇다면 

 System.out.println("userrequest"+userRequest.getClientRegistration()); 얘를 한번 뒤져 보자

 

registrationId='google', 이건 공통인 거 같다

이 값이 facebook이면 face으로 google이면

구글로 해주면 된다

 

새로운 인터페이스를 만들자!

ioauth2.java

이렇게 하고 igoogle/iface/inaver 이렇게 

만들어 주면 된다 

나중에 타플랫폼 추가시 

인터페이스만 이제 늘려주면 된다 

 

igoogle.java

loaduserservice에 조건문을 걸어주자!

그리고 밑에 set이 너무 많아서 

vo에 가서 새로운 생성자 하나 만들어주자

어근데..?

this.email=~가아니라

this.setEmail로 되어있다

언제 이렇게 했지..?

바꿔줘야겠다

uservo.java

이렇게 받아주면

 

휴 조금 괜찮아졌다!

 

테스트 역시 잘된다!

다음은 이제 enum을 이용해서 

role_user 이런 오타의 위험을 줄여보자

 

https://youtu.be/9ui2i-SgBpk

이분 영상을 보고 아주 성공하고 이해했다!