>에러 상황
: 아파치 웹서버과 애플리케이션을 실행시키고 http://localhost에 접속하면 index.html로 구성한 화면이 뜨지만, Google로 로그인을 누르면 null을 허용할 수 없다는 식의 에러가 발생함
>에러 스크린샷
>해결
: Member 클래스에 존재하는 필드들 속성값 중 nullable=false 를 제거함
: email 필드의 nullable=false는 제거할 필요 없음.
>설명
: email 을 통해 Member 객체를 생성하고 DB에 저장하는 부분이 있음. (문제 지점)
: OAuth 2 Provider 마다 다를 수 있지만, 구글은 본인 로그인 방식으로 인증 후 유저의 email 정보는 제공해주지만 name, phone 같은 정보는 제공해주지 않기 때문에 Member 객체에서 삭제하는 방향이 옳음.
: OAuth 2 Provider 가 제공해줄 수 있는 유저 정보의 범위를 알 필요가 있음.
====================================================
>궁금증
1. OAuth 2 인증 방식을 사용하는건 결국 OAuth 2 Provider(Google, Github, Twitter, 카카오, 네이버)의 서버와 서비스를 이용하는건데 비용이 안드나?
: 로그인 인증 자체에는 비용이 들지 않음. 하지만 부가적인 서비스(API)의 트래픽, 접근 권한 등에 제한을 두어 비용을 지불하게함.
: 결국 본인들 서비스를 사용하게끔 유도하려고 로그인 인증 정도는 제공해주는 개념
'Error > Spring Error' 카테고리의 다른 글
[Spring] JPA-MySQL 연동 (0) | 2022.11.16 |
---|---|
[Spring Rest Doc] urlTemplate not found (0) | 2022.11.11 |
[IntelliJ] Found Invalid Gradle JVM configuration (0) | 2022.10.25 |