카카오 싱크 약관동의 후 리턴 값 소셜로그인에 연동 관련 문의드립니다~
본문
안녕하세요~ 카카오싱크 연동 관련해서 문의드립니다.
그누보드에는 소셜로그인 기능으로 "카카오로그인" 기능이 장착되어있는것으로 알고 있는데요,
현재 연동하려고하는 것은 "카카오로그인" 이 아닌 "카카오싱크" 인데요,
카카오 싱크의 경우 특징이 모바일에서 "카카오 1초 회원가입" 등의 버튼을 클릭 시 바로 "카카오톡" 앱이 열린 후 아이디 비번 입력 과정 없이 "약관동의" 창이 나오고 약관에 동의하면 이 후 다시 이전 페이지로 복귀하면서 회원가입 및 로그인이 처리되는 방식입니다.
그래서 테스트를 진행하고 있는데요, "카카오 1초 회원가입" 버튼 클릭 시 카톡앱으로 이동 후 약관동의 받고 다시 이전페이지로 리턴 후 고객정보까지 잘 받아오는것까지 확인 했는데요, 이 받아온 정보를 그누보드에 있는 소셜 로그인 프로세스에 값을 연결시켜 회원가입 및 로그인 처리를 하고 싶은데요 어떻게 하면 될 지 아시는 분 있으시면 답변즘 부탁드립니다~~~~
우선 아래 소스는 제가 테스트 한 소스입니다.
<script src="https://developers.kakao.com/sdk/js/kakao.js"></script>
<script>
Kakao.init('411c22135a66f3f740f95960b2fd730c'); //발급받은 키 중 javascript키를 사용해준다.
console.log(Kakao.isInitialized()); // sdk초기화여부판단
function kakaoLogin() {
window.Kakao.Auth.login({
scope:'profile_nickname, name, account_email, phone_number',
success: function(response) {
console.log('response_1 : '+response) // 로그인 성공하면 받아오는 데이터
console.log('response_1 : '+JSON.stringify(response));
window.Kakao.API.request({ // 사용자 정보 가져오기
url: '/v2/user/me',
success: (res) => {
const kakao_account = res.kakao_account;
console.log('kakao_account_1 : '+kakao_account);
console.log('kakao_account_2 :'+JSON.stringify(kakao_account));
console.log('\n');
console.log('닉네임 : '+kakao_account.profile['nickname']);
console.log('이름 : '+kakao_account.name);
console.log('이메일 : '+kakao_account.email);
console.log('전화번호 : '+kakao_account.phone_number);
console.log('\n');
console.log('프로필_1 : '+kakao_account.profile);
console.log('프로필_2 : '+JSON.stringify(res));
}
});
},
fail: function(error) {
console.log(error);
}
});
}
<ul>
<li onclick="kakaoLogin();">
<a href="javascript:void(0)">
<span>카카오 로그인</span>
</a>
</li>
</ul>
위 소스로 테스트 할 경우 console.log로 값 찍어보면 값이 잘 넘어오는것이 확인됩니다.
넘어온 값
response --> {"access_token":"-px6Dudw7WmewRs6MQuOL887yzxqJpdGtYwHLgorDNMAAAF-4jarzA","token_type":"bearer","refresh_token":"bIiXLMfaDMUR7olJRWkxPGiGcm8zNpCHPQF9xworDNMAAAF-4jaryw","expires_in":7199,"scope":"account_email profile_nickname name phone_number","refresh_token_expires_in":5183999}
res --> {"id":2075420000,"connected_at":"2022-02-10T05:58:25Z","synched_at":"2022-02-10T05:58:25Z","properties":{"nickname":"홍길동"},"kakao_account":{"profile_nickname_needs_agreement":false,"profile":{"nickname":"홍길동"},"name_needs_agreement":false,"name":"홍길동","has_email":true,"email_needs_agreement":false,"is_email_valid":true,"is_email_verified":true,"email":"*** 개인정보보호를 위한 이메일주소 노출방지 ***","has_phone_number":true,"phone_number_needs_agreement":false,"phone_number":"+82 10-8000-0000"}}
문제는 이 넘어오는 값을 현재 그누보드에서 지원하는 소셜로그인 소스에 값을 연동시켜서 회원가입 및 로그인 하려고 하는데요, 카카오에서 넘겨받을 값을 그누보드 소스에 어떻게 넘기면 되는지 궁굼합니다 ㅠ
제발 아시는 분 및 운영진 고수님 답변즘 부탁드립니다~~
!-->!-->
답변 1
넘어온 토큰 값이 Bearer와 refresh 2개 네요.
해본지 하도 오래되서.(그누에서는 소셜로그인처리를 어덯게 하는지)
개념을 잡으려면 소모임앱개발이나 Restful을 보세요.
위에서 내려온 정보를 데이타베이스에 저장을 해야 될것 같습니다.