Java에서의 Cookie 사용법을 자꾸 까먹어서 이번기회에 작성해본다.
1. 쿠키 생성
Cookie cookie = new Cookie("cookie_key", "value");
cookie.setMaxAge(60*60*24*365); // 쿠키 유지 기간 - 1년
cookie.setPath("/"); // 모든 경로에서 접근 가능하도록
response.addCookie(cookie); // 쿠키저장
}
2. cookie 가져오기
Cookie[] cookies = request.getCookies();
for (int i = 0; i < cookies.length; i++) {
cookies[i].getName();
cookies[i].getValue();
}
3. 쿠키 삭제
cookies[i].setMaxAge(0); //쿠키 유지기간을 0으로함
cookies[i].setPath("/"); //쿠키 접근 경로 지정
response.addCookie(cookies[i]); //쿠키저장
3번에서 빨간색으로 표시한 cookies[i].setPath("/"); 이부분은 쿠키의 생성때와 똑같이 지정을 하지 않으면 삭제가 되지 않는다!!( 삽질좀 했죠.;;에휴 )
또한 쿠키 생성때 cookie.setDomain(".aaa.com") 과 같이 지정 할수 있는데
".aaa.com" 과깉이 지정하면 www.aaa.com, sub.aaa.com, xxx.aaa.com 과같이 모든 서브 도메인에서 접근이 가능하다.
음.. 물론 저렇게 세팅하면 삭제시도 저렇게 해줘야겠죠? ( 한번해보세요 제가 해봤을땐 삭제시는 setDomain()과는 상관 없고 오로지 setPath("/") 였다는...
결론...setPath, setDomain 을 쿠키 생성할때 넣어줬으면 지울때도 반드시 넣어준다..!!!!!!
댓글 ( 4)
댓글 남기기