cookie实例介绍

1、 什么是cookie?
  Cookie就是浏览器保存在计算机上面的一些信息。一般是保存用户登录状态,就是说Cookie会保存用户登录某个网站的信息在本地,这样下次这个用户访问网站的时候就可以自动取出他的Cookie信息,方便定制用户想要的内容。
  我们可以直接在浏览器里面查看cookie信息。如chrome浏览器下:打开网页,右击审查元素或者F12,选择Resources,就可以看到Cookies,查看即可。

2、 实例
下面我们就来写一个操作cookie的方法:

//设置cookie信息
function set_cookie(name, value, minutes, path, domain, secure){  
    var cookie = name + '=' + escape(value);  
    if (minutes){  
        var expiration = new Date((new Date()).getTime() + minutes*60000);  
        cookie += ';expires=' + expiration.toGMTString();  
    }  
    if (path) cookie += ';path=' + path;  
    if (domain) cookie += ';domain=' + domain;  
    if (secure) cookie += ';secure';  
    document.cookie = cookie;  
}

//通过name获取它的cookie
function get_cookie(name){  
    var str_cookies = document.cookie;  
    var arr_cookies = str_cookies.split(';');  
    var num_cookies = arr_cookies.length;  
    for(var i = 0; i < num_cookies; i++){  
         var arr = arr_cookies[i].split("=");  
         if(arr[0] == name) 
             return unescape(arr[1]);  
    }  
    return null;  
}

//删除cookie信息
function remove_cookie(name, path, domain){  
    if(get_cookie(name)){  
        var cookie = name + '=;expires=Fri, 02-Jan-1970 00:00:00 GMT';  
        if (path) cookie += ';path=' + path;  
        if (domain) cookie += ';domain=' + domain;  
        document.cookie = cookie;  
    }  
}

//调用
set_cookie('name', 'eric', 10, '/');或者
//set_cookie('name','value', 10, '/', "", "")
alert(get_cookie('name'));  
remove_cookie('name', '/');  

3、cookie属性值
  cookie其实是一个字符串,保存在 document.cookie 中。每个cookie除了name名称和value值这两个属性以外,还有四个属性。这些属性是: expires过期时间、 path路径、 domain域、以及 secure安全。
(1)expires是cookie的过期时间。指定cookie的生命期。如果想让cookie的存在期限超过当前浏览器会话时间,就必须使用这个属性。当过了到期日期时,浏览器就会删除cookie文件。

(2)path是路径,如果是整个网站都有效就设置成’/’,如果想在某个目录可以访问就设置’/path’,path是你的目录名。不设置的话就是本目录可以访问。

(3)domain指域名。是path的延伸。 如果我们想让 mail.test.com 能够访问www.test.com设置的cookies,该怎么办? 我们可以把domain属性设置成“test.com”,并把path属性设置成“/”。可以为空。

(4)secure指安全,指定cookie的值通过网络如何在用户和WEB服务器之间传递。这个属性的值或者是“secure”,或者为空。缺省情况下,该属性为空,也就是使用不安全的HTTP连接传递数据。如果一个cookie标记为secure,那么,它与WEB服务器之间就通过HTTPS或者其它安全协议传递数据。不过,设置了secure属性不代表其他人不能看到你机器本地保存的cookie。换句话说,把cookie设置为secure,只保证cookie与WEB服务器之间的数据传输过程加密,而保存在本地的cookie文件并不加密。如果想让本地cookie也加密,得自己加密数据。

4、说明
  对于cookie,在刚开始进入这个站点的时候,站点中是没有这个cookie值的,所以,刚进入站点的时候,需要你先去设置你需要的cookie(set_cookie),在中去设置方法。在设置好之后,在页面第一次加载的时候就将这个cookie值加再进来,可以给它一个默认值。加载进来之后,在需要从cookie里面去设置进来的这个值时,直接去从cookie里面拿这个值。用get_cookie方法。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值