kakaotech-25 / cs-plant-interview

cs 의 씨앗을 심기 위한 레포지토리 🌱
2 stars 0 forks source link

[Network] 쿠키와 세션 #23

Closed rimeir closed 2 months ago

rimeir commented 2 months ago

예상 면접 질문

LEE-DA-EUN commented 2 months ago
  1. 쿠키와 세션을 사용해야하는 이유를 HTTP 프로토콜의 특성과 함께 설명해주세요.

    • HTTP 프로토콜은 비연결지향과 무상태성이라는 특성을 가짐. 클라이언트와 서버는 요청-응답 후 연결을 종료하며 각 요청은 독립적으로 처리되기 때문에 서버는 이전 요청의 상태를 기억하지 않음 이러한 특성 때문에 사용자 상태 유지를 위해 쿠키와 세션 같은 기술이 필요함. 쿠키와 세션을 통해 사용자의 로그인 상태나 장바구니 정보 같은 상태를 지속적으로 관리할 수 있음.
  2. 쿠키의 종류는 어떻게 나누어지나요? 각각의 특징을 설명해주세요.

    • 지속 쿠키(Persistent Cookie): 만료 시간이 설정된 쿠키로 만료 시간이 될 때까지 브라우저가 종료되어도 클라이언트에 유지됨
    • 세션 쿠키(Session Cookie): 만료 시간이 설정되지 않은 쿠키로 브라우저 메모리에 저장하고 브라우저가 종료될 때 삭제됨
  3. 쿠키와 세션의 차이점을 설명해주세요.

    • 저장위치 : 쿠키는 클라이언트에 저장되고 세션은 서버에 저장
    • 보안 : 쿠키는 클라이언트에 저장되어 보안에 취약하고 세션은 서버에 저장되어 상대적으로 안전
    • 수명 : 쿠키는 설정된 만료 시간까지 유지되고, 세션은 브라우저가 종료되면 삭제됨
    • 데이터 저장 용량 : 쿠키는 4KB로 제한되고 세션은 쿠키보다 큰 데이터 저장이 가능함
    • 속도 : 쿠키는 비교적 빠르고 세션은 비교적 느림
1013115 commented 2 months ago
  1. 쿠키와 세션을 사용해야하는 이유를 HTTP 프로토콜의 특성과 함께 설명해주세요.
    • HTTP 프로토콜은 무상태(stateless) 프로토콜로, 서버와 클라이언트 간의 각 요청과 응답이 독립적이며 이전의 요청 상태를 기억하지 않는다. 이로 인해 사용자가 로그인하거나 특정 작업을 완료할 때마다 매번 새로 인증하거나 정보를 제공해야 하는 불편함이 생긴다.
    • 쿠키는 클라이언트 측(브라우저)에 저장되는 작은 데이터 조각으로, 서버가 클라이언트의 상태를 추적할 수 있도록 돕는다. 이를 통해 사용자가 로그인한 상태나 장바구니 같은 정보를 유지할 수 있다.
    • 세션은 서버 측에서 저장되는 사용자별 상태 정보이다. 클라이언트가 서버에 요청할 때마다 세션 ID를 쿠키나 URL을 통해 전달하여 서버가 사용자의 상태를 유지할 수 있게 다.
  2. 쿠키의 종류는 어떻게 나누어지나요? 각각의 특징을 설명해주세요.
    • 쿠키는 지속 쿠키와 세션 쿠키로 나뉘며 지속 쿠키는 만료 시간이 설정된 쿠키로, 만료 시간이 될 때까지 브라우저가 종료되어도 클라이언트에 유지한다. 세션 쿠키는 만료 시간이 설정되지 않은 쿠키로, 브라우저 메모리에 저장하고 브라우저가 종료될 때 삭제 된다.
  3. 쿠키와 세션의 차이점을 설명해주세요.
    • 쿠키는 클라이언트(브라우저)에 저장되며 보안이 취약하다. 설정된 만료 시간까지 유지되며 4KB로 제한된다. 비교적 빠르다.
    • 세션은 서버에 저장 및 관리하여 비교적 안전하다. 브라우저 종료 전까지 유지되며 쿠키보다 큰 데이터 저장이 가능하다. 비교적 느리다.
msung99 commented 2 months ago
  1. 쿠키와 세션을 사용해야 하는 이유 (HTTP 프로토콜 특성과 함께)

    • HTTP는 무상태(stateless) 프로토콜로, 각 요청과 응답이 독립적이어서 이전 상태를 기억하지 못한다. 즉, 서버는 사용자가 이전에 누구였는지 알 수 없기 때문에 사용자 상태를 유지하기 위해 쿠키와 세션이 필요하다. 이를 통해 로그인 상태 유지, 장바구니 등 사용자 정보를 관리할 수 있다.
  2. 쿠키의 종류와 특징

    • 세션 쿠키 (Session Cookie): 브라우저가 종료되면 삭제되는 쿠키로, 일시적으로 사용자 정보를 저장한다.
    • 영구 쿠키 (Persistent Cookie): 만료 기한이 설정되어 브라우저를 닫아도 유지되며, 기한이 끝날 때까지 사용자의 상태를 저장한다.
    • 서드파티 쿠키 (Third-party Cookie): 사용자가 방문한 웹사이트가 아닌 다른 도메인에서 생성된 쿠키로, 주로 광고 추적에 사용된다.
    • 보안 쿠키 (Secure Cookie): HTTPS를 통해서만 전송되는 쿠키로, 보안이 중요한 데이터에 사용된다.
  3. 쿠키와 세션의 차이점

    • 저장 위치: 쿠키는 클라이언트(브라우저)에 저장되고, 세션은 서버에 저장된다.
    • 유효 기간: 쿠키는 만료 기한에 따라 영구적일 수 있고, 세션은 일정 시간 동안 서버에서 유지되며 브라우저가 닫히면 대부분 만료된다.
    • 보안성: 쿠키는 클라이언트에 저장되므로 상대적으로 취약할 수 있으며, 세션은 서버에 저장되므로 더 안전하다.
JaeJunday commented 2 months ago

쿠키와 세션을 사용해야하는 이유를 HTTP 프로토콜의 특성과 함께 설명해주세요.