728x90
HTTP Cookie🍪
- Server에서 사용자의 컴퓨터(Client)에 저장하는 정보 파일
- 사용자가 별도의 요청을 하지 않아도 Browser는 request시 Request Header를 넣어 자동으로 Server에 전송
- key와 value로 구성되고 String 형태로 이루어져 있음
- Browser마다 저장되는 Cookie는 다름(서버에서는 브라우저가 다르면 다른 사용자로 인식)
Cookie와 Session이 필요한 이유
⇒ HTTP Protocol의 특징이자 약점을 보완하기 위해
- HTTP Protocol의 특징
- connectionless
- 요청 후 응답 받으면 연결 끊어버림
- stateless
- 그로 인해 상태 유지 불가
- connectionless
Cookie의 사용 목적
- Session 관리: 사용자 아이디, 접속 시간, 장바구니등의 Server가 알아야 할 정보 저장
- 개인화: 사용자마다 다르게 그 사람에 적절한 페이지를 보여줄 수 있음(Ex: My Page, 내가 쓴 글 등등)
- 트래킹: 사용자의 행동과 패턴을 분석하고 기록
Cookie 동작 순서
- Client가 페이지를 요청
- WAS는 Cookie를 생성(요청 처리와 별개로 생성)
- HTTP Header에 Cookie를 넣어 응답
- Browser는 넘겨받은 Cookie를 PC에 저장, 다시 WAS가 요청할 때 요청과 함께 Cookie를 전송
- Browser가 종료되어도 Cookie의 만료 기간이 남아있다면 Client는 계속 보관
- 동일 사이트 재방문시 Client의 PC에 해당 Cookie가 있는 경우, 요청 페이지와 함께 Cookie를 전송
Cookie 특징
- 이름, 값, 만료일(저장 기간 설정), 경로 정보로 구성
- Client에 총 300개의 Cookie 저장 가능
- 하나의 Domain 당 20개의 Cookie 저장 가능
- 하나의 Cookie는 4KB까지 저장 가능
Cookie Example
- ID 저장(자동 Login)
- 일주일간 다시 보기 않기 팝업에 관한 정보 저장
- 최근 검색한 상품에 대한 광고 추천
- 쇼핑몰 장바구니 기능
'Network' 카테고리의 다른 글
Circuit Switching & Packet Switching (0) | 2023.01.14 |
---|