본문 바로가기

Error Note

[Error Note] Naver Login Api 에러

날 너무 힘들게 했지만 사실 별 거 아니였던... 네이버 로그인 Api 에러 

 

속상했던 에러 1. 서비스 설정에 오류가 있어 네이버 아이디로 로그인할 수 없습니다.
속상했던 에러 2. 개발자센터에 등록되지 않은 사이트에서 로그인을 시도했습니다.

 

그런데 개발자포럼에 많이들 나와있듯이 거의 대부분은 callback url 문제이다.

 

네아로 로컬 개발 시 발생했던 에러 해결 정리

1. NaverLoginBO의 Client ID와 Client Secret 다시 한 번 확인하기

내 애플리케이션에 설정된 Client ID, Client Secret 값과 정확히 똑같은지 확인해보자 

https://developers.naver.com/apps/#/list

 

2. API 설정에서 Callback URL은 모든 URL 주소로 추가하자 

그래도 에러가 난다면 특히 서비스 URL과 코드소스에서 REDIRECT_URI 값(네이버 로그인 인증의 경과를 전달받을 콜백 UR)을 확인해보자

서비스 URL : 127.0.0.1 이라면 REDIRECT_URI : 127.0.0.1

서비스 URL : localhost 라면 REDIRECT_URI : localhost

callback url에서 많이 헤맸다ㅠㅜ 내 애플리케이션 -> API 설정

 

3. NaverLoginBO의 REDIRECT_URI 값과 Callback URL이 일치한지 확인하기

개발코드 NaverLoginBO에 적은 private final static String REDIRECT_URI 값이

내 애플리케이션 -> API 설정에서 콜백URL로 잘 추가되어 있는지 확인하기 

public class NaverLoginBO {
	/* 인증 요청문을 구성하는 파라미터 */
	// client_id: 애플리케이션 등록 후 발급받은 클라이언트 아이디
	// response_type: 인증 과정에 대한 구분값. code로 값이 고정돼 있습니다.
	// redirect_uri: 네이버 로그인 인증의 경과를 전달받을 콜백 URL(URL인코딩). 애플리케이션을 등록할 때 Callback
	// URL에 설정한 정보.
	// state: 애플리케이션이 생성한 상태 토큰
	private final static String CLIENT_ID = "CLIENT_ID 값";
	private final static String CLIENT_SECRET = "CLIENT_SECRET 값";
	private final static String REDIRECT_URI = "http://127.0.0.1:8082/ess/callback";
	private final static String SESSION_STATE = "oauth_state";