출처 : https://interconnection.tistory.com/74
그래서 쿠키는 뭐고 세션은 뭔데? (사용 예)
쿠키
방문한 웹 페이지에 "아이디와 비밀번호를 저장하시겠습니까?"라고 나타냄
"오늘 이 창을 다시 보지 않음" 체크
쇼핑몰 장바구니 같은 기능
세션
로그인과 같은 작업.
1. 쿠키란?
- 클라이언트의 로컬에 저장되는 키와 값이 들어있는 작은 데이터 파일
- 이름, 값, 만료날짜(쿠키 저장 기간), 경로정보가 들어있음
- 일정 시간 동안 데이터를 저장할 수 있어서 로그인 상태를 유지합니다.
- 클라이언트의 상태 정보를 본인 하드디스크에 저장하였다가 필요할 때 참조 및 재사용 합니다.
1) 쿠키 원리
브라우저에서 웹 페이지 접속 -> 클라이언트가 요청한 웹 페이지를 받으면서 쿠키를 클라이언트 로컬(하드)에 저장 ->
클라이언트가 재 요청시 웹 페이지 요청과 함께 쿠키도 전송 -> 지속적으로 로그인 정보를 가지고 있는 것처럼 사용 가능
2. 세션이란?
- 클라이언트와 웹 서버 간의 네트워크 연결이 지속적으로 유지되고 있는 상태
- 사용자가 브라우즈를 열어 서버에 접속한 뒤 접속을 종료할 때까지.
- http 프로토콜은 비접속형 프로토콜, 매 접속시마다 새로운 네트워크 연결이 이루어짐. 세션이 연결유지를 가능하게 해줌.
- 클라이언트가 웹서버에 request(요청)을 보내면 해당 서버의 엔진이 클라이언트에게 유일한 ID를 부여하는데 이 ID를 세션이라고 함.
- 세션 ID는 임시로 저장하여 페이지 이동시 사용되거나 클라이언트가 재접속했을때 클라이언트를 유일하게 구분하는 수단이 됨.
1. 세션의 원리 )
클라이언트가 서버에 접속시, 세션 ID를 발급 => 서버에서는 발급해준 세션 ID를 쿠키를 사용해 저장(JSESSIONID -쿠키이름) =>
클라이언트는 다시 접속할 때, 이 쿠키(JESESSIONID)를 이용해서 세션 ID값을 서버에 전달
세션을 구별하기 위해서 ID가 필요하고, ID만 쿠키를 사용해서 저장해 놓은 뒤, 쿠키는 자동으로 서버에 전송되어서 해당 서버에서
세션 ID에 따른 처리를 수행
2. 세션의 장점 )
각 클라이언트에게 고유 ID를 부여.
세션 ID로 클라이언트를 구분해서 클라이언트의 요청에 맞는 응답을 할 수 있음.
서버에 저장을 하여 보안면에서 쿠키보다 우수함.
3. 쿠키와 세션의 차이점
쿠키와 세션은 기능과 동작원리가 비슷하다. 세션은 쿠키를 바탕으로 동작되기 때문이다.
가장 중요한 차이는 저장되는 곳이 다르다는 것!
쿠키는 클라이언트에 저장되고( 각 사용자의 로컬에 정보를 남김)
세션은 서버에 저장이 된다.
쿠키의 경우 서버의 자원을 전혀 사용하지 않지만
세션은 서버에 저장되기 때문에 서버자원을 사용한다.
두번때 차이는 만료기간이 다르다는 것
출처: https://toma0912.tistory.com/67?category=279089 [토마's 개발노트]
출처 : https://sdevstudy.tistory.com/27
출처 : https://hyeonstorage.tistory.com/125
'일상 기술노트' 카테고리의 다른 글
리눅스 정리 (0) | 2019.04.23 |
---|---|
OSI 7계층 쓰임새와 암기 및 알아야할것 (0) | 2019.04.23 |
구글 스프레드시트는 뭘로 만들어진 걸까? (0) | 2019.02.10 |
[웹] 쿠키와 세션의 차이점 - 1. 쿠키와 세션의 필요성 http의 특징. (0) | 2019.01.31 |
[자료구조] 스택? 큐? (0) | 2019.01.31 |