본문 바로가기

개발

[localStorage] 로그인 상태 유지

728x90

 

 

 

로그인 상태 유지

var keepLoginChk = localStorage.getItem('keepLoginChk');
var keepLoginId = localStorage.getItem('keepLoginId');
var keepLoginPw = localStorage.getItem('keepLoginPw');

// 로그인이 null 이면 N 로그인 중이면 Y, 페이지 무한 reload 방지
var loginCheck = $("#loginStatus").val();
	
if (loginCheck == "N" && keepLoginChk == "true" && keepLoginId != null & keepLoginPw != null) {
	var params = {
		id: keepLoginId,
		password: keepLoginPw
	};
		
	$.ajax({
		type: "POST",
		url : "/user/login",
		data: JSON.stringify(params),
		contentType: "application/json; charset=utf-8",
		success : function(result){

			var msg = result.msg;

			if (msg == "OK") {
				location.reload();
			} else {
				//localStroage 전체 삭제
				localStorage.clear();
				location.reload();
			}
		}
	});
}

 

로그인 성공 시, localStroage 값 저장

localStorage.setItem('keepLoginChk', $("#autologin").is(":checked"));
localStorage.setItem('keepLoginId', $('#loginId').val());
localStorage.setItem('keepLoginPw', $('#loginPassword').val());

 

로그아웃 할 때는 localStorage 전체 삭제

$('.loginout').click(function(){
	$.ajax({
		url : "/user/logOut",
		success : function(result){
			//localStroage 전체 삭제
			localStorage.clear();
			location.href = "/";
		}
	});
});

 

참고

 

(HTML&DOM) 로컬스토리지, 세션스토리지 - 그리고 쿠키

안녕하세요. 이번 시간에는 로컬 스토리지(localStorage)와 세션 스토리지(sessionStorage)에 대해 알아보겠습니다. 이름만 봐도 각각의 기능이 뭔지 대충 알겠죠? 영어에 약하신 분들을 위해 간단히 설�

www.zerocho.com

 

728x90
반응형