Web存储

Cookie

HTTP Cookie简称cookie,在HTTP请求发送Set-Cookie HTTP头作为响应的一部分。通过name=value的形式存储。


cookie由以下信息构成:

  1. 名称:name(不区分大小写,但最好认为它是区分的)
  2. 值:value(通过URL编码:encodeURIComponent)
  3. 路径
  4. 失效时间:一般默认是浏览器关闭失效,可以自己设置失效时间
  5. 安全标志:设置安全标志后只有SSL连接的时候才发送到服务器

cookie主要用于保存登录信息。

一段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
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,否则会话数据一直存在。

三者的区别

Web存储_第1张图片

安全性的问题:使用这三者的时候都要时刻注意XSS注入的风险,因为可以在控制台直接访问它们,所以不要存入敏感数据。

你可能感兴趣的:(Web存储)