Skip to content

Latest commit

 

History

History
56 lines (40 loc) · 1.98 KB

cookieNsession.md

File metadata and controls

56 lines (40 loc) · 1.98 KB

쿠키 (Cookie)

: 클라이언트(브라우저) 로컬에 저장되는 Key-Value 형식의 작은 데이터 파일

  • 사용자 인증이 유효한 시간 명시 가능
    • 유효시간이 정해지면 브라우저가 종료돼도 인증 유지
  • 클라이언트에 300개까지 저장 가능
    • 한 도메인당 20개의 값만 가질 수 있음
    • 하나의 쿠키는 4KB까지 저장 가능
  • 브라우저가 Request 시 자동으로 넣어서 서버에 전송
  • ex. 자동로그인, 장바구니 등

구성

  • 이름
  • 유효시간
  • 쿠키를 전송할 도메인
  • 쿠키를 전송할 요청 경로

동작 방식

  • 클라이언트가 페이지 요청
  • 서버에서 쿠키 생성
  • HTTP 헤더에 쿠키를 포함시켜 응답
  • 브라우저가 종료돼도 유효시간이 있다면 보관
  • 같은 요청 시 HTTP 헤더에 쿠키를 포함시켜 보냄
  • 서버에서 쿠키를 읽고, 쿠키를 업데이트 하여 응답

세션 (Session)

: 사용자가 웹 브라우저를 통해 웹 서버에 접속한 시점부터 웹 브라우저를 종료하여 연결을 끝내는 시점까지 같은 사용자로부터 오는 일련의 요청을 하나의 상태로 보고, 그 상태를 일정하게 유지하는 기술

  • 쿠키를 기반으로 하고 있음
  • 클라이언트 구분을 위해 Session id를 부여
  • 접속 시간 제한 설정 가능
  • 보안에 좋지만, 메모리 부하가 커질 수 있음

동작 방식

  • 클라이언트가 서버에 접속 시 Session Id 발급
  • 클라이언트는 쿠키를 사용해서 Session Id 저장
  • 클라이언트가 서버에 Request를 보낼 때, 쿠키의 Session Id도 같이 서버에 전달
  • 서버는 Session Id를 받아 세션에 있는 클라이언트 정보를 가져와 사용
  • 클라이언트 정보를 가지고 서버 요청 처리 후 응답


참고자료