인프런 영문 브랜드 로고
인프런 영문 브랜드 로고

인프런 커뮤니티 질문&답변

박지영님의 프로필 이미지

작성한 질문수

코드로 배우는 React with 스프링부트 API서버

로그인 페이지 설정

kakao 로그인 구현중 에러

작성

·

41

0

1.JPG.webp2.JPG.webp

이렇게 에러가 뜨고 데이터베이스에 회원 가입이 안되고 있습니다ㅠ.ㅠ교제 423 페이지까지 작성하고 카카오로 로그인시 insert문이 실행되고 회원이 생성되어야 하는데 안되네요

답변 2

0

구멍가게코딩단님의 프로필 이미지
구멍가게코딩단
지식공유자

우선 첫번째 에러의 원인은 컨트롤러에서 파라미터를 이용할 때 @RequestParam 만 이용해서 일겁니다.

 

버전이 변경되면서 @RequestParam("name")과 같은 형태가 되어야 동작하는 버전이 있습니다.

 

아마도 kakao에서 받은 키 값을 파라미터로 받는 메서드에 @RequestParam만 있으실 듯 합니다.

 

0

인프런 AI 인턴님의 프로필 이미지

안녕하세요, 인프런 AI 인턴입니다.

박지영님이 겪고 계신 문제는 Java IllegalArgumentException으로 인한 것으로 보이며, 이는 대개 메서드 인자에서 예상되는 값이 없는 경우 발생합니다.

문제 원인 분석:

  1. IllegalArgumentException: 에러 메시지에서 지적하는 대로, 메서드에 전달된 String 타입 인자 중 네임이 없다는 점에서 발생할 수 있습니다. 이는 보통 메서드 호출 시 필요한 파라미터가 누락되었을 때 발생합니다.

  2. HTTP 상태 코드 500 (Internal Server Error): 대부분 서버에서 예외가 발생하여 요청을 처리할 수 없는 상황입니다.

해결책 제안:

  1. 코드 검토 및 수정: MemberServiceImpl.java 파일 내에서 setInfo와 같은 메서드의 호출 부분을 검토하세요. 호출 시 모든 필수 파라미터가 정확히 전달되고 있는지 확인해야 합니다. 예를 들어, 메서드 시그니처에서 필요로 하는 각 String 파라미터의 값을 체크합니다.

  2. 로그 활용: 로그를 강화하여 어떤 인자가 정확히 누락되었는지 파악합니다. logger.debug() 또는 logger.info() 등을 활용하여 메서드 진입 시 각각의 파라미터 값을 출력해 보세요.

  3. API 통신 확인: React 애플리케이션과 백엔드(Spring Boot) 간의 데이터 흐름을 추적하여, 특정 인자가 전달되지 않는 지점을 파악하세요. 네트워크 탭에서 요청 파라미터를 점검해보세요.

아래에서 비슷한 문제를 다룬 기존 답변을 참고하시기 바랍니다:
- 9강 kakao api로 아이디 생성 후 오류 에서는 Kakao API 연동 시 발생할 수 있는 일반적인 예외와 해결 방법을 다루고 있습니다.
- 챕터 8 카카오 토큰 받기 이후에서는 Kakao OAuth 연동 중 발생할 수 있는 클라이언트-서버 통신 오류에 대한 해결 방안을 제공합니다.

저는 질문자님의 이해를 돕고자 지식공유자님의 기존 답변을 참고하여 유사한 답변 링크를 추천해드리고 있습니다.
현재 베타 기능으로 답변이 만족스럽지 않을 수 있는 점 양해 부탁드립니다. 🙏
추가적으로 궁금한 점이 있으시면, 이어서 질문해 주세요. 곧 지식공유자께서 답변해 주실 것입니다.