* Cookie(쿠키)란?
- HTTP 프로토콜에서 웹 서버에 대한 요청과 응답은 그 다음 요청과 응답하는 관계가 없음.
- Cookie를 발행함으로써 이러한 관계없는 요청과 응답을 세션(웹 페이지에 접속한 후 해제할 때까지의 일련의 동작)으로 취급할 수 있음.
- Cookie에는 유효 기간을 설정할 수 있고, 유효 기간이 지난 Cookie는 자동으로 폐기됨.
■ PC1
1. 방문 횟수나 날짜의 초깃값을 전달함.
2. 웹 브라우저는 받은 Cookie 정보를 반환함.
3. 받은 Cookie의 내용을 반영할 수 있음.
■ PC2
4. 받은 Cookie의 방문 횟수를 증가시키고 다시 전달함.
* Cookie의 송신과 회수
- 서버 측에서 쿠키를 보내는 데는 몇 가지 방법이 있음.
- HTML의 메타 요소에 포함시켜서 보낼 수 있음.
<meta http-equiv="Set-Cookie" content="내용"> |
- Perl에서 보내는 경우에는 CGI 프로그램에서 출력을 시작할 때 아래와 같이 작성함.
print "Content-type: text/htm\n"; print "Set-Cookie: 내용\n"; print "\n"; print "<html>"; |
- 웹 브라우저에서 웹 서버로 반환되어 온 Cookie는 웹 서버의 환경 변수인 'HTTP_COOKIE'에 저장됨.
[클라이언트 측에서의 처리]
- JavaScript에서는 웹 브라우저에 기록된 Cookie를 취급할 수 있음. Cookie의 내용은 document.cookie 프로퍼티 안에 들어 있음.
* Cookie의 서식
- 위에서 말한 '내용' 부분은 아무것이나 괜찮은 것이 아니라 일정한 서식이 있음.
- Cookie의 값에 한글과 같은 문자는 그대로 사용할 수 없음. 사용하고 싶은 경우는 이스케이프 처리(받을 때는 복원)를 해야함.
- 한 개분의 Cookie 서식은 아래와 같음.
YuminaVisit=0; expires=Wed, 1-Jan-2014 00:00:00 GMT; secure |
: Cookie의 데이터 본체. 변수명=값과 같이 작성함.
: 유효 기간. GMT(그리니치 표준시)로 위와 같은 서식으로 지정함. 과거의 날짜를 지정하면 Cookie는 삭제됨. 유효 기간을 지정하지 않으면 웹 브라우저를 닫을 때까지 유효한 Cookie가 됨.
: secure를 지정하면 안전한 통신일 때만 정송됨.
- 그 밖의 파라미터로 Cookie의 발행처를 알려주기 위한 domain이나 배포처를 알려주기 위한 path가 있음.
내용 출처 : HTML5가 보이는 그림책 (ANK Co., Ltd 저, 성안당)
'Programming > JavaScript' 카테고리의 다른 글
문서 객체 모델(DOM) (0) | 2017.05.20 |
---|---|
브라우저 객체 모델(BOM) (0) | 2017.05.20 |
객체 / 내장객체 (0) | 2017.05.20 |
자바스크립트 기초 문법 (0) | 2017.05.20 |
JavaScript의 메서드 (0) | 2017.05.18 |
JavaScript 이벤트 (0) | 2017.05.18 |
요소의 참조 (0) | 2017.05.17 |
DOM이란? (0) | 2017.05.17 |