UX·UI - FrontEnd Dev. Story

프론트엔드/Javascript

쿠키 활용해서 제어하기 :: setcookie 저장 / cookie 삭제

클로이겅쥬 2021. 1. 11. 18:31
반응형
function setCookie(name, value, day){
//*1) ex01 setcooke( name, value, exprire, path, domain, secure)
	var today = new Date(); // Data 객체 생성
    today.setDate(today.getTime() + day * 60 * 60 * 24 * 1000); // 1초 = 1/1000
	//*2 파라미터로 받은 day(기간)을 data 객체에 담는다.
	document.cookie = name + '=' + value + ';expires=' + date.toUTCString() + ';path=/';
    // cookie를 셋팅합니다.
};

 

*1) 

- name : 쿠키 변수명

 

- value : 변수값

 

- exprire : 쿠키를 사용할 수 있는 시간

 

- path : 쿠키가 사용 될 위치 (기본적으로 '/'를 지정하지만 '/test/'로 지정하면 test 폴더와 그 하위폴더에서만 작동)

 

- domain : 쿠키가 사용될 도메인 지정

 'www.test.com'으로 지정하면 무조건 그 도메인에서만 작동.

'.test.com'으로 지정하면 서브도메인인 ( 'test1.test.com','test2.test.com' )등에서도 사용.

 

- secure : https 프로토콜에서만 작동할지 여부 (0 또는 1 값을 같습니다. 기본 0값)

 

 

 

*2)

1/1000초이므로 60*60*24*1000 = 1일로 만든다.

 

 

 

 

cookie 삭제

var deleteCookie = function(name) {
	var date = new Date();
	document.cookie = name + "= " + "; expires=" + date.toUTCString() + "; path=/";
    //해당하는 이름을 가진 cookie를 현재 날짜로 수정한다.
    //현재 날짜가 지나자마자 사라짐으로 삭제된다고 볼 수 있다.
}

 

 

setCookie("test", "test_123", 1);
// test라는 이름과 test_123라는 값을 가지며 1일동안 유지되는 cookie를 생성

 

 

 

 

toGMTString() VS toUTCString() 

cookie의 날짜를 셋팅할 때 구글링 하다보면 toGMTString() 같은 함수를 사용한다.

해당 함수는 Deprecated 되었고 toUTCString() 함수를 사용하기를 권장한다.



 

반응형