쿠기(Cookie)란?
웹 사이트에 접속할 때 서버에 의해 사용자의 컴퓨터에 저장되는 정보를 의미한다.
웹 사이트는 이렇게 저장된 사용자의 정보를 클라이언트(client) 측의 컴퓨터에 남겨서 필요할 때마다 재사용한다.
사용자의 컴퓨터에 마치 과자 부스러기가 남아 있는 것과 같다고 해서 'Cookie'라는 명칭이 붙었다.
현재 이러한 쿠키는 로그인 정보나 장바구니 정보를 저장하는 용도로 많이 활용되고 있다.
하지만 사용자의 정보가 컴퓨터에 고스란히 남기 때문에 사생활 침해의 우려가 있으며, 보안과 관련된 이슈를 가지고 있다.
세션을 쓰면 되는데 굳이 쿠키를 사용하는 이유는???
세션이 쿠키에 비해 보안도 높은 편이나 쿠키를 사용하는 이유는 세션은 서버에 저장되고, 서버 자원을 사용하기 때문에 사용자가 많을 경우 소모되는 자원이 상당하다. 이러한 자원관리 차원에서 쿠키와 세션을 적절한 요소 및 기능에 병행 사용하여, 서버 자원의 낭비를 방지하며 웹사이트의 속도를 높일 수 있다.
쿠키 특징
- 이름, 값, 만료일(저장 기간 설정), 경로 정보로 구성되어 있다.
- 클라이언트에 총 300개의 쿠키를 저장할 수 있다.
- 하나의 도메인 당 20개의 쿠키를 가질 수 있다.
- 하나의 쿠키는 4KB까지 저장 가능하다.
쿠키의 동작 순서
- 클라이언트가 페이지를 요청한다.
- 웹 서버는 쿠키를 생성한다.
- 생성한 쿠키에 정보를 담아 HTTP화면을 돌려줄 때, 같이 클라이언트에 돌려준다.
- 넘겨 받은 쿠키는 클라리언트가 가지고 있다가(로컬 PC에 저장) 다시 서버에 요청과 함께 쿠키를 전송한다.
- 동일 사이트 재방문 시 클라이언트의 PC에 해당 쿠키가 있는 경우, 요청 페이지와 함께 쿠키를 전송한다.
ex) 팝업창 (오늘 이 창을 다시 보지 않기), 방문했던 사이트의 재방문 시 아이디와 비밀번호 자동 입력
[[JSP] Session
세션(Session)이란? 웹 사이트의 여러 페이지에 걸쳐 사용되는 사용자가 정보를 저장하는 방법을 의미한다. 사용자가 브라우저를 닫아 서버와의 연결을 끝내는 시점까지를 세션이라고 한다. 쿠키
lala9663.tistory.com](https://lala9663.tistory.com/77)
'Spring' 카테고리의 다른 글
[Spring] DAO, DTO, VO, Entity 란? (0) | 2022.10.22 |
---|---|
[JSP] Java Beans (0) | 2022.10.22 |
[JSP] Session (0) | 2022.10.20 |
[JSP] Redirect 와 Forward 비교 (0) | 2022.10.20 |
[JSP] Implicit Object, Directive, Action Tag (0) | 2022.10.20 |