안녕하세요! 반갑습니다. 최대한이라고 합니다.
이제부터 열심히 한번 살아보겠습니다.
쿠키... 캐시...
수업 시간에 분명 배웠는데 아직 헷갈리네요. 분발해야겠어요.
쿠키의 개념을 보기에 앞서 HTTP의 특징을 간단히 짚고 넘어가야할 것 같네요!
HTTP(HyperText Transfer Protocol)은 Text 기반의 통신 규약으로 인터넷에서 데이터를 주고받을 수 있는 프로토콜입니다.
Connectionless (비연결성) - 클라이언트와 서버가 한 번 연결을 맺은 후, 클라이언트 요청에 서버가 응답을 마치면 클라이언트와 연결을 끊습니다.
Stateless (상태없음) - 클라이언트의 상태 정보를 가지지 않는 서버 처리 방식.
서버와 클라이언트가 요청과 응답을 주고 받고 이후 서버에 동일한 클라이언트로 부터의 요청이 와도 서버는 클라이언트를 식별할 수 없습니다. (못 알아봄)
-> HTTP는 Stateless를 해결하기 위해서 브라우저에 Cookie를 저장하여 서버가 클라이언트를 식별할 수 있도록 합니다!
음, 「사이트를 방문하고 이용할 때 컴퓨터(브라우저)에 저장되는 내용」이라고 할 수 있을 것 같습니다.
// 얼마전에 요즘 날씨가 쌀쌀해진 탓에 쇼핑몰에 후드티를 검색했더니 이후 SNS에 후드티 광고를 많이 보여주더군요. 이것도 쿠키가 한 몫 했나봅니다! 하하
우리가 Chrome을 통해서 웹사이트 '네이버'에 로그인을 한번 하면 이후 자동 로그인(네이버 사이트 내에서 페이지 이동 시마다 로그인 갱신)이 가능한 것을 볼 수 있습니다.
초기 로그인 시 네이버가 우리의 id와 password를 (데이터베이스에서 찾는다면? ps. DB는 아직 많은 공부가 필요합니다..) 확인한 후 로그인을 시켜줍니다. 그 때 우리의 Chrome 브라우저에 (예시로) id: choikorea, password: pilseungkorea를 입력해서 접속했다는 기록이 남게되고, 이후 Chrome은 네이버 웹페이지에 접속할 때 마다 이 기록으로 자동 로그인을 시켜줄 수 있습니다!
쿠키는 기록으로 남기에, Chrome 브라우저에 자동 로그인이 된 네이버 사이트에서 모든 쿠키를 삭제하면 실시간으로 로그인이 풀리는 것을 보실 수 있습니다! (너무 당연한건가요.)
· 쿠키는 사용자에게 저장되어 사용자가 임의로 고치거나 지울 수 있는 것은 물론 남이 훔쳐보거나 가로채기 쉽습니다. -> 보안성이 낮음!
따라서 사용자의 편의를 위하되, 타인에 의한 임의의 수정·삭제·도난당하는 일이 일어나더라도 큰 일은 없을 수준의 정보들을 저장하게 됩니다.
+다른 누군가에게 노출되어서는 안되는 정보들은 '세션'으로 서버 안에서 다뤄집니다. 세션은 다음 글에서 계속...됩니다!
첫 글이라 글이 매끄럽지 못하고 가독성도 떨어지는 것 같지만, 꾸준히 발전하는 모습 보여드리겠습니다!
잘봤습니다!