HTTP 는 상태가 필요해
상태 프로토콜 (state protocol) - 상태를 저장하는 프로토콜 : TCP
무상태 프로토콜 (stateless protocol) - 상태를 저장하지 않는 프로토콜: IP, UDP, HTTP
- 장점: 상태를 어떻게 저장할지 고려할 필요가 없어서 서버를 단순하게 설계가능
- 단점: 요청마다 추가 정보를 전달
HTTP 외부에 따로 저장소를 두어 그곳에서 상태를 저장할 수 있도록 관리하고, 필요에 맞게 서버에 상탤르 전달
--- HTTP 단점 보완
브라우저 안의 작은 조각, 쿠키
데이터를 저장하는 방식 중 하나 인 쿠키
브라우저에 데이터를 저장하는 이유
신속성과 서버 비용절감
숨은 작은 조각, 쿠키
세션 쿠키(session cookie) : 브라우저가 종료될때 함께 사라짐
영구 쿠키 (persistant cookie) : 만료 기간이 존대, 해당 기간이 지나면 삭제
쿠키의 단점
보안에 취약
퍼스트 파티 쿠키 - 방문한 웹사이트에서 직접 발행한 쿠키
서드 파티 쿠키 - 제 삼자가 발행 한 쿠키
개징정보 문제
쇼핑한 내용과 유사한 광고가 뜨는 모습 <- 서트 파티 쿠키 때문
쿠키를 넘어서, 웹 스토리지와 IndexdedDB
더 많이 더 빠르게, 웹 스토리지
<그림 첨부>
웹 스토리지는 데이터의 유지시간에 따라 두 가지로 분류
- 로컬 스토리지 : 자동 로그인처럼 지속해서 사용해야 하는 데이터
- 세션 스토리지 : 일회성 정보처럼 잠깐만 필요한 데이터
로컬 스토리지에 데이터를 추가하기 위해서는 → localStorage.setItem('key', 'value');
특정 키의 값만 삭제 → removeItem('key')
웹 페이지내 모든 로컬 스토리지 값을 삭제 → clear()
브라우저 안의 데이터 베이스, IndexedDB
- 브라우저에 내장된 데이터베이스 이며, 웹 스토리지보다 더 강력하게 데이터를 저장하는 방법
- 많은 양의 데이터를 체계적으로 관리할 수 있게 해줌 → 물류창고 같은 느낌
- 클라이언트 단에서 자바스크립트로 조작 가능
- 웹 스토리지나 쿠키는 키값을 알아야 값을 찾는 것이 가능하지만, IndexedDB 는 cursor라는 개념을 이용하여 키를 몰라도 찾는 것이 가능
세션으로 안전하게 저장하기
브라우저에서 데이터를 저장하면 다른사람들이 쉽게 접근할 수 있다는 문제점이 있다.
서버에 데이터를 저장하는 세션
- 사용자 정보를 서버 측에 저장하는 방법을 말할때도 세션(Session)이라고 한다.
- 서버에 일시적으로 데이터를 저장할 수 있는 기술
- 세션 정보를 저장하는 장소는 쿠키, 세션은 쿠키에 기반한 관계
- 클라이언트에 세션 정보를 저장하는 과정에서 쿠키사용
??? 쿠키는 실제 데이터를 클라이언트에 저장, 세션은 서버에 저장
'책 > 그림으로 쉽게 이해하는 웹 - HTTP- 네트워크' 카테고리의 다른 글
8 장 : 네트워크 접속 장치 (1) | 2023.11.03 |
---|---|
6장 : HTTP (Hypertext Transfer Protocol) (0) | 2023.10.31 |
5장 : TCP (Transmission Control Protocol) (0) | 2023.10.30 |
4 장: IP (0) | 2023.10.27 |
3장 : URL & DNS (0) | 2023.10.26 |