<%@ page language="java" contentType="text/html; charset=UTF-8"
pageEncoding="UTF-8"%>
<%@ taglib prefix="form" uri="http://www.springframework.org/tags/form" %>
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8" />
<meta http-equiv="X-UA-Compatible" content="IE=edge" />
<meta name="viewport" content="user-scalable=no, initial-scale=1.0, maximum-scale=1.0, minimum-scale=1.0, width=device-width" />
<title>Custom Login Demo - Kakao JavaScript SDK</title>
<script src="//developers.kakao.com/sdk/js/kakao.min.js"></script>
<script src="http://code.jquery.com/jquery-1.11.2.min.js"></script>
<script>
$(document).ready(function(){
Kakao.init('35c746c7c031b1c1d304d8dcde651b9f');
function getKakaotalkUserProfile(){
Kakao.API.request({
url: '/v1/user/me',
success: function(res) {
$("#kakao-profile").append(res.properties.nickname);
$("#kakao-profile").append($("<img/>",{"src":res.properties.profile_image,"alt":res.properties.nickname+"님의 프로필 사진",}));
},
fail: function(error) {
console.log(error);
}
});
}
function createKakaotalkLogin(){
$("#kakao-logged-group .kakao-logout-btn,#kakao-logged-group .kakao-login-btn").remove();
var loginBtn = $("<a/>",{"class":"kakao-login-btn","text":"로그인"});
loginBtn.click(function(){
Kakao.Auth.login({
persistAccessToken: true,
persistRefreshToken: true,
success: function(authObj) {
getKakaotalkUserProfile();
createKakaotalkLogout();
},
fail: function(err) {
console.log(err);
}
});
});
$("#kakao-logged-group").prepend(loginBtn)
/* Kakao.Auth.setAccessToken(accessTokenFromServer); */
}
function createKakaotalkLogout(){
$("#kakao-logged-group .kakao-logout-btn,#kakao-logged-group .kakao-login-btn").remove();
var logoutBtn = $("<a/>",{"class":"kakao-logout-btn","text":"로그아웃"});
var refreshToken = Kakao.Auth.getRefreshToken();
logoutBtn.click(function(){
alert("script");
var refreshToken = Kakao.Auth.getRefreshToken();
Kakao.Auth.logout(function(data){
if(data == true) {
Kakao.Auth.setAccessToken(accessTokenFromServer);
}
else { alert("실패");}
});
createKakaotalkLogin();
$("#kakao-profile").text("");
});
$("#kakao-logged-group").prepend(logoutBtn);
}
if(Kakao.Auth.getRefreshToken()!=undefined&&Kakao.Auth.getRefreshToken().replace(/ /gi,"")!=""){
createKakaotalkLogout();
getKakaotalkUserProfile();
}else{
createKakaotalkLogin();
}
});
</script>
</head>
<body>
<%-- <form:form modelAttribute="memberVO" action="/member" method="post"> --%>
<div id="kakao-logged-group"></div>
<div id="kakao-profile"></div>
<%-- </form:form> --%>
</body>
</html>
로그아웃을 누르면 세션이 종료되서 새로운 아이디로 접속하고 싶은데 이런식으로 코드를 작성하여서 alert에 성공이 떠도 다시 기존에 접속했던 계정으로 자동로그인 됩니다. api를 제가 이해한 대로 코드 작성하였는데 잘 안되네요 도움을 주셨으면 합니다.