클라이언트가 서버에게 정보를 request를 하고 서버는 클라이언트에게 그 요청에 대한 응답을 보낸다.
예를 들어 로그인 인증을 요청에 대한 응답으로 클라이언트에게 보내면 http는 그 정보를 저장하지 않는다.
지속적으로 연결을 하지 않기 때문에 자원낭비가 되지 않지만 그 데이터로 인증을 할 때마다 인증을 해줘야 돼고 굉장히 비효율적이다.
말 그대로 storage는 저장소인데 이런 브라우저 저장소엔 Local storage / Session storage / Cookie가 있다. 확인하는 방법은 크롬 개발자 도구에 애플리케이션에 들어가면 각각 확인할 수 있다.
Local storage / Session storage는 key값과 value값으로 저장된다.
두 개의 차이점으로
Local Storage는 껏다켜도 남아있고
Session storage는 껏다키면 사라지지만 새로고침은 유지된다.
Cookie는 name이 key값이고 value, expires/ Max-Age, Secure등등 여러가지가 저장된다.
Local storage / Session storage와 다르게 여러가지가 저장되냐면 이 두 가지는 정말 브라우저만의 저장소이고,
Cookie는 브라우저와 Backend와 데이터를 주고받을 때 통로가 될 수 있기 때문이다.
그래서 예를들어 쿠키에 qqq라는 변수를 저장하고 Backend와 통신을 하면 자동으로 Backend로 딸려들어가고
반대로 Backend에서 Cookie로 변수를 보내줄 수 있다. 받은 소스코드는 우리가 따로 뽑아서 저장하지 않더라도 자동으로 Cookie에 등록이 된다.