Cookie
引用自《javascript高级重新设计(第三版)》
HTTP Cookie,通常直接叫cookie,最初是在客户端用于存储会话信息的。该标准要求服务器对任意Http请求发送 Set-Cookie HTTP头作为响应的一部分,其中包括响应信息。例如:
HTTP/1.1 200 OK
Content-type: text/html
Set-Cookie: name/value
Other-header: other-header-value
这个HTTP响应设置以 name 为名称,以 value 为值得一个Cookie,名称和值在传送时都必须是URL编码的。
浏览器会存储这样的会话信息,并在这之后,通过为每个请求添加 Cookie HTTP头将信息发送回服务器,例如:
GET /index.html HTTP/1.1
Cookie: name=value
Other-header: other-header-value
发送回服务器的额外信息可以用于唯一验证客户来自于发送的哪个请求。
Cookie分类
1)持久性
Cookie:会被存储到客户端的硬盘上。
2)会话 Cookie(Session 所采用的Cookie类型):不会存储到客户端的硬盘上,而是放在浏览器进程所处的内存当中,当浏览器关闭则该会话 Cookie 就销毁了。
创建Cookie
注意:Cookie的失效时间须使用GMT格式:Sun, 31 Aug 2014 07:56:14 GMT
<%@ page contentType="text/html;charset=UTF-8" language="java" %>
<html>
<head>
<title></title>
<script type="text/javascript" >
function setCookie(){
var expiresTime = new Date();
expiresTime.setTime(expiresTime.getTime() + 30 * 60 * 1000); //Cookiey有效时间
document.cookie = "id=tongming;expires="+expiresTime.toGMTString();
}
</script>
</head>
<body>
<input type="button" onclick="setCookie()" value="create cookie"/>
</body>
</html>
Win7下IE的Cookie目录:X:\Users\username\AppData\Roaming\Microsoft\Windows\Cookies\Low