2012년 10월 9일 화요일

자바스크립트 이용한 쿠키삭제

우리회사 인트라넷에는 로그아웃 버튼이 없다. 왜 로그아웃 버튼을 만들어주지 않는지는 해명을 들어봐도 이해가 되지 않지만, 암튼 로그아웃 대신에 익스플로러를 끄라고 한다. 그게 인터넷 익스플로러7 까지는 먹혔는데 IE8이상에서는 탭이나 창을 닫아도 로그아웃되지 않는 문제가 있었고,  그 해결방안을 찾다가 익스플로러 즐겨찾기에 javascript를 등록하여 로그인정보를 제거하는 꼼수를 생각해내었다.



익스플로러를 껐다가 켜라는 뜻은 결국 클라이언트쪽에서 쿠키방식으로 로그인을 관리한다는 것인데, 그러면 쿠키를 지워주는 버튼을 만들면 되는거 아닌가?? 암튼 안해주니 직접하는수밖에... 웹 개발할 때에도 jQuery 프레임워크만 써서 잘 모르는 문법이지만, 구글신에게 여쭈어가며 익스플로러 즐겨찾기 버튼에 아래와 같은 함수를 삽입했다.


javascript:(function(cookieName){var expireDate=new Date();expireDate.setDate(expireDate.getDate()-1);document.cookie=cookieName+"= ; expires="+expireDate.toGMTString()+";path=/";})("Authentication");location.reload();

요약하자면, 로그인 정보인 "Authentication"쿠키의 expiration date를 현재의 날짜(getDate)보다 하루 전날의 날짜로 설정하여, 쿠키를 삭제하도록 한 것... 요렇게 해서 회사 인트라넷에 공유하였고 많은 사람들이 잘 사용하고 있다.

내가 프로그래머들의 세계에서 조직적으로 일해 본 적이 없어서 그런지 모르겠지만, 전산관리 조직은 가끔씩 이해가 안갈 때가 있다.

댓글 없음:

댓글 쓰기