goal
- 쿠키와 세션 이해하기
클라이언트 서버
C S
L ----------- 1.요청 -----------> E
I <-----2.쿠키와 함께 응답----- R ------- 쿠키가 없는 상태
E -----3.쿠키와 함께 요청----->V ------- 쿠키가 있는 상태
N <---------- 4.응답 ----------> E
T R
"클라이언트를 기억하기 위해" 서버는 "쿠키와 함께 응답"을 보낸다.
쿠키는 name = delilah
처럼 키-값의 형태
브라우저(클라이언트)는 쿠키가 있으면 자동으로 같이 보내므로 크게 신경쓰지 않아도 된다.
서버에서 브라우저로 쿠키를 보낼 때! 형식에 맞게 코드를 작성한다.
쿠키는 요청과 응답의 "header"에 저장된다.
쿠키는 "문자열 형식"으로 오므로, {"name" : "delilah"}처럼 객체로 바꿔주어야 할 필요가 있다.
브라우저는 status code를 보고, 보낸 요청의 성공/실패 여부를 판단할 수 있다.
상태코드 | 설명 | 주요 상태코드 |
---|---|---|
200번대 | 성공 | 200 : 성공 201 : 새로운 데이터를 서버에 생성하는 작업 성공 |
300번대 | redirect 다른 페이지로 이동 | 300 : 영구 이동 301 : 임시 이동 |
400번대 | (클라이언트의) 요청 오류 | 401 : 권한 없음 403 : 금지됨 404 : 찾을 수 없음 |
500번대 | 서버 오류 | 500 : 내부 서버 오류 502 : 불량 게이트웨이 503 : 서비스 이용 불가 |
HTTP Header |
---|
HTTP Body <html><body> 이윌리 하트</body></html> |
Header에는 General header / Req,Res header / Entity header
가 있다. (쿠키는 헤더에!)
HEADER : req/res에 대한 정보를 가진다.
BODY : 클라이언트와 서버 간 주고받은 "실제 데이터"가 들어간다.
클라이언트가 아닌 "서버에 사용자 정보를 저장"하고, 클라이언트와는 "세션아이디"로만 소통한다.
출처 : 조현영_node.js 교과서 길벗💚️