쿠키란 : 사용자가 방문한 웹페이지에서 이용된 환경설정 및 기타 정보를 사용자의 컴퓨터에 작은 파일로 저장한 것
(웹 서버가 생성하여 웹 브라우저로 전송하는 작은 정보 파일)
쿠키의 역할
- 브라우저에 저장되어서 접속자 장치를 인식하거나 일부 데이터를 저장하는 역할
Cookie는 웹사이트가 인터넷 사용자에 대한 정보를 기억하고, 인터넷 사용자가 웹사이트를 더욱 효율적으로 이용할 수 있도록 합니다. 크게는 아래 세가지로 나눌 수 있습니다
- 세션관리 : 서버에 저장해야 할 데이터 관리
- 개인 맞춤 데이터 : 테마 등과 같은 세팅값
- 트래킹 : 사용자의 행동을 기록 및 분석
예를 들어, 인터넷 사용자가 로그인한 상태를 유지하기 위해 Cookie를 사용할 수 있는데, 이는 세션관리에 해당됩니다.
쿠키의 문제점
- 인증에 사용하기에는 문제점이 많은 쿠키
Cookie는 노출이 되었을때, 민감 정보까지 다 노출되어 보안이 좋지 않습니다. 일부 웹사이트에서는 Cookie를 사용하여 사용자의 웹사이트 방문 이력을 추적하기도 하고 조작당해서 들어올 가능성도 존재합니다.
또한, 웹 브라우저 마다 쿠키에 대한 지원 형태가 달라 다른 브라우저간의 공유가 불가능합니다. 쿠키 사이즈가 4KB로 제한되어 있기때문에 충분한 데이터를 담을 수 없다는 점 역시 큰 문제점입니다.
쿠키 저장 방법
1. 쿠키 클래스 객체 생성
<% Cookie cookie = new Cooke("id", "smhrd"); %>
2. Response 내장 객체에 addCookie() 호출
<% response.addCookie(cooke); %>
쿠키 저장 조회
<%
Cookie[] cookies = request.getCookies();
for(int i = 0; i < cookies.length; i++) {
out.print("쿠키 이름 : " + URLDecoder.decode(cookies[i].getName() + "<br>"));
out.print("쿠키 값 : " + URLDecoder.decode(cookies[i].getValue() + "<hr>"));
}
%>
쿠키 삭제
<% cooke.setMaxAge(0); %>
'JSP' 카테고리의 다른 글
| Session (3) | 2024.04.20 |
|---|---|
| Servlet 개념 (0) | 2024.04.20 |
| MVC (0) | 2024.04.20 |
| 웹에서 파일 업로드하기 (0) | 2024.04.20 |
| Session을 ArrayList로 받기/세션 배열 (0) | 2024.04.20 |