본문 바로가기
카카오 REST API & SDK/카카오 로그인

카카오 로그인 에러 KOE006

by kakao-TAM 2021. 1. 1.

KOE006에러는 Redirect URI설정과 소스 코드의 Redirect URI이 일치하지 않아서 발생합니다.

에러 메시지가 개선되어 에러 화면에 해결책이 있습니다.

사이트에서 카카오 로그인에 설정한 되돌아올 주소인 RedirectURI를 디벨로퍼스 설정에 등록하지 않았기 때문에 에러 발생합니다.

"어떻게 해결할 수 있나요?"에 해당하는 카카오 디벨로퍼스 설정에 해당 RedirectURI를 등록해주시면 즉시 해결됩니다.

 

<카카오 로그인 Redirect URI>

 

KOE006 발생 사례

 

1. Redirect URI를 등록 안한 경우.

 

2. 오타

 

- 등록된 Redirect URI이나 소스코드의 Redirect URI에 오타 (복사 후, 찾기로 찾아지는지 확인)

 

- www.은 입력 하지 않습니다.

 

- http, https의 구분도 정확해야합니다.

 

- 주소에 ?, = 등 특수문자가 있는경우 소스 코드에서 인코딩 하지 않으면 발생하기도 합니다.

ex) php 인코딩 예제 (urlencode)

$redirect_uri = urlencode("http://" . $_SERVER['HTTP_HOST'] . "/callBackForKakao.php"); //★ 수정 할 것

$kakaoLoginUrl = "https://kauth.kakao.com/oauth/authorize?client_id=" . $client_id . "&redirect_uri=" . $redirect_uri . "&response_type=code&state=" . $state;

- Cafe24의 경우 아래와 같이 정의된 주소를 세트로 등록해야합니다.

http://도메인.co.kr/Api/Member/Oauth2ClientCallback/kakao/
http://m.도메인.co.kr/Api/Member/Oauth2ClientCallback/kakao/
https://도메인.co.kr/Api/Member/Oauth2ClientCallback/kakao/
https://m.도메인.co.kr/Api/Member/Oauth2ClientCallback/kakao/

- Cafe24의 Redirect URI에 아래와 같이 skin 이라는단어가 포함되어 있다면, 디자인 미리보기 화면에서 카카오 로그인 시도한 것으로 Redirect URI를 등록해도 해당 페이지에서는 카카오 로그인이 작동하지 않습니다. skin이라는 path가 포함 안된 원래 도메인에서 카카오 로그인해야하고 사이트 내 html 링크나 섬네일 링크에 skin이 포함된 경로는 사용하지 말아야합니다.

https://m.도메인.co.kr/skin-skin5/Api/Member/Oauth2ClientCallback/kakao/

 

- 고도몰의 경우 아래와 같이 정의된 주소를 세트로 등록해야합니다.

http://도메인.co.kr/member/kakao/kakao_login.php
http://m.도메인.co.kr/member/kakao/kakao_login.php
https://도메인.co.kr/member/kakao/kakao_login.php
https://m.도메인.co.kr/member/kakao/kakao_login.php

 

 

3. 다른 developer 계정에 Redirect URI 설정

 

- 로그인한 계정의 REST_API_KEY와 소스 코드에 설정된 REST_API_KEY를 비교해봅니다.

 

체크 방법

1. 크롬 브라우저에서 F12버튼 클릭으로 개발자 도구를 실행합니다.

 

 

2. 간단히 설정을 합니다.

 

 

 

클리어 버튼으로 불필요한 로그를 제거하고 

 

 

 

All을 선택합니다.

 

 

3. 로그인을 실행합니다.

 

 

 

authorize 로 시작하는 로그를 메모장에 복사해서 붙여 놓고 확인합니다.

(마우스 우클릭, Copy>Copy link Address)

 

4. redirect_uri 부분을 점검합니다. (특수문자는 %3A(:), %2F(/) 로 치환되니 무시하세요.)

https://kauth.kakao.com/oauth/authorize?client_id=2d686445645464612312318505c7c8c71&
redirect_uri=http%3A%2F%2Ftest-tam.pe.kr%2FcallBackForKakao.php
&response_type=code&auth_tran_id=xnif4jc2g2d68640b56d986af5c8a48505c7c8c71kjdqdsbe&ka=sdk%2F1.39.10%20os%2Fjavascript%20sdk_type%2Fjavascript%20lang%2Fko-KR%20device%2FWin32%20origin%2Fhttp%253A%252F%252Ftest-tam.pe.kr&is_popup=false

 

"redirect_uri=" 뒤 주소만 보면 됩니다.

 

- http인가? https인가?

- http%3A%2F%2F 뒤에 있는 도메인이 Redirect URI에 등록된게 맞나?

- %2F 뒤에있는 경로가 Redirect URI에등록된게맞나?

- 특수문자를 %3A(:), %2F(/) 로 치환하고 Kakao Developer 사이트 Redirect URI에서 Ctrl+F로 검색해본다.

 

 

대부분의 문제는 Redirect URI 착각과 소스 코드상 오타가 원인입니다.

 

 

 추가. 카카오 로그인 시, 리다이렉트 uri확인 가능한 크롬 익스텐션 프로그램
https://chrome.google.com/webstore/detail/chrome-extension-for-kaka/pjllpdcfdgpnlelchlpdbhjlihlelhii?hl=ko

 

Chrome extension for Kakao login check

카카오 로그인 API를 원활히 사용하기 위해 만든 개발 보조 도구 입니다. 처음 버전은 /oauth/authorize 호출 시, 전달하는 파라메터를 Alert로 표시하여 KOE006 Redirect_Uri 확인을 간편하게 하였습니다.

chrome.google.com

크롬 확장 프로그램 설치 후, 로그인 시도하면 CallBack URL이 Alert창에 표시됩니다.

해당 URL이 카카오 Developers에 설정 되어있는지 확인 해보면 됩니다.

 

댓글