[python] Http 통신의 특성

Http 통신의 특성


Connectionless

- 클라이언트가 request를 서버에 보내면, 서버는 클라이언트에게 response를 보낸다. 그리고 접속을 끊는 특성

Stateless

- 접속을 끊는 순간 클라이언트와 서버의 통신은 끝나고 상태정보는 유지하지 않는 특성


쿠키(cookie)

  • 클라이언트에 저장되는 키와 값이 들어있는 작은 데이터 파일 
  • 쿠키는 이름,값,만료날짜(쿠키의저장기간), 경로 정보가 들어있습니다. 
  • 쿠키는 일정기간동안 데이터를 저장할 수 있어서 로그인 상태를 유지합니다.
  • 쿠키는 클라이언트의 상태정보를 유저의 하드디스크에 저장하였다가 필요할 때 참조, 재사용 합니다. 

쿠키의 사용예

1.방문사이트에서 아이디와 비번을 저장하겠습니까? 라고 메시지가 나오면 쿠키에 저장하겠냐는 의미입니다.

2.팝업창이 뜰때 "오늘하루 보지않음"을 체크하면 오늘은 창이 뜨지 않는경우도 쿠키를 사용합니다. 

세션(session)

  • 사용자가 브라우저를 열어 서버에 접속한 뒤 접속을 종료할 때까지를 말합니다.
  • HTTP프로토콜은 비접속형 프로토콜이기에, 매 접속시마다 새로운 네트워크 연결이 이루어지는데, 세션이 연결유지를 가능하게 해줍니다.
  • 클라이언트가 Request를 보내면, 해당 서버의 엔진이 클라이언트에게 유일한 ID를 부여하는데, 이 ID를 세션이라합니다.
  • 세션ID는 임시로 저장하여 페이지 이동시 이용하거나, 클라이언트를 유일하게 구분하는 수단이됩니다.

세션의 원리

  • 세션 ID를 서버에서 클라이언트가 웹사이트에 접속시 발급해줍니다.
  • 서버에서 클라이언트로 발급해준 세션 ID를 쿠키를 사용해서 저장합니다.
  • 라이언트는 다시 접속시, 이 쿠키를 이용해서 세션ID값을 서버에 전달합니다.

세션의 장단점

세션의 장점

  • 각 클라이언트에게 고유 ID를 부여합니다.
  • 세션ID로 클라이언트를 구분해서 클라이언트의 요구에 맞는 서비스를 제공할 수 있습니다.
  • 사용했던 정보들을 서버에 저장하기 때문에 보안 상 쿠키보다 우수합니다.

세션의 단점

  • 서버에 저장되는 세션때문에 서버에 처리를 요구하는 부하와 저장공간을 필요로 합니다.

쿠키와 세션의 차이점

  • 큰 차이점은 저장되는 위치입니다.
  • 쿠키는 클라이언트에 저장되어서 보내는 역할을 하고 세션은 서버에 저장되어서 클라이언트에게 알려줘서 사용합니다.

 

댓글

Designed by JB FACTORY