ThinkChat🤖让你学习和工作更高效,注册即送10W Token,即刻开启你的AI之旅 广告
### Cookie HTTP Cookie简称cookie,在HTTP请求发送Set-Cookie HTTP头作为响应的一部分。通过name=value的形式存储。 <br> cookie由以下信息构成: 1. 名称:name(不区分大小写,但最好认为它是区分的) 2. 值:value(通过URL编码:encodeURIComponent) 3. 域 4. 路径 5. 失效时间:一般默认是浏览器关闭失效,可以自己设置失效时间 6. 安全标志:设置安全标志后只有SSL连接的时候才发送到服务器 cookie的作用:主要用于保存登录信息 <br> 一段cookie信息:name=value; expries=Mon, 07-Apr-04 10:15:32 GMT; domain=www.qcla.sinaapp.com; path=/; secure; 注意:每段信息用分号加空格进行分隔。 cookie的接口很蹩脚(document.cookie),一般情况下都要自己封装。 ~~~ function setcookie(name,value,days) { var date=new Date(); date.setDate(date.getDate()+days); document.cookie=name+'='+value+';expires='+date; } ~~~ ~~~ function getcookie(name) { var arr=document.cookie.split(';'); for(var i=0;i<arr.length;i++) { var arr2=arr[i].split('='); if(arr2[0]==name)return arr2[1]; } return ''; } ~~~ ~~~ function removecookie(name) { setcookie(name,'1',-1); } ~~~ ### session sessionStorage是Storage类型的一个对象,拥有clear(),getItem(name),key(index),removeItem(name),setItem(name,value)方法。 sessionStorage对象存储特定于某个会话的数据,也就是该数据只保持到浏览器关闭。 ### localStorage localStorage也是Storage类型的一个对象。 在HTML5中localStorage作为持久保存在客户端数据的方案取代了globalStorage(globalStorage必须指定域名)。 localStorage会永久存储会话数据,除非removeItem,否则会话数据一直存在。 ### 三者的区别 ![](https://box.kancloud.cn/2016-04-07_5706716c6b6a5.JPG) 安全性的问题:使用这三者的时候都要时刻注意XSS注入的风险,因为可以在控制台直接访问它们,所以不要存入敏感数据。