属性
name 唯一必须设置的属性,表示cookie的名称
expires 指定cookie的存活周期,如不设置,浏览器关闭自动失效
path 决定cookie对于服务器对于其他网页的可用性,一般情况下, cookie对同一目录下的所有页面都可用,当设置path属性后,cookie只对指定路径及子路径下的所有网页有效
domain 许多服务器由多台服务器组成,domain属性主要设置相同域下的多台服务器共享一个cookie,如果web服务器a需要与web服务器b共享cookie,需要把a的cookie的domain属性设置为b,这样a创建的cookie就能被a、b共享
secure 一般支持SSL的网站以HTTPS开头,secure 属性可设置cookie只能通过HTTPS 的或者其他安全协议访问
cookie 本质上是字符串
一般情况下,cookie不能包含分号、逗号、空格等特殊字符,但是对于这些字符可以使用编码进行传输,也就是将文本字符串中的专用字符转换成对应的十六进制的ASCII值,可使用encodeURI()函数将文本字符转换成有效地URI,使用decodeURI()函数进行解码
写入cookie
var cookieTest ="name=userName";document.cookie= cookieTest; //存入//用分号分割不同属性var date = newDate();date.setDate(date.getDate()+7); //设置cookie的存活时间为一星期document.cookie= encodeURI("name=user")+";expires="+date.toUTCString();
读取cookie
var cookieString= decodeURI(document.cookie);var cookieArray= cookieString.split(";");for(vari=0;i< cookieArray.length;i++){ var cookieNum = cookieArray[i].split("="); var cookieName = cookieNum[0]; var cookieValue = cookieNum[1];}
删除cookie
var date = newDate();date.setTime(date.getTime()-10000);document.cookie= "name=User;expires="+date.toGMTString;//删除一个cookie就是将其过期时间设置为过去的一个时间值