设置cookie,删除cookie,读取cookie

2018-02-28 07:46:58来源:cnblogs.com作者:Enid0044人点击

分享

1.首先来说下cookie的作用

我们在浏览器中,经常涉及到数据的交换,比如你登录邮箱,登录一个页面。我们经常会在此时设置30天内记住我,或者自动登录选项。那么它们是怎么记录信息的呢,答案就是今天的主角cookie了,Cookie是由HTTP服务器设置的,保存在浏览器中,但HTTP协议是一种无状态协议,在数据交换完毕后,服务器端和客户端的链接就会关闭,每次交换数据都需要建立新的链接。

2.cookie的声明周期会随着浏览器的关闭而销毁!

持久cookie则是设定了它的生命周期expires,此时,cookie像商品一样,有个保质期,关闭浏览器之后,它不会销毁,直到设定的过期时间。对于持久cookie,可以在同一个浏览器中传递数据,比如,你在打开一个淘宝页面登陆后,你在点开一个商品页面,依然是登录状态,即便你关闭了浏览器,再次开启浏览器,依然会是登录状态。这就是因为cookie自动将数据传送到服务器端,在反馈回来的结果。持久cookie就像是我们办理了一张积分卡,即便离开,信息一直保留,直到时间到期,信息销毁。

设置cookie

function setCookie(name,value,time){     var strsec = getsec(time);    var exp = new Date();    exp.setTime(exp.getTime() + strsec*1);    document.cookie = name + "="+ escape (value) + ";expires=" +             exp.toGMTString();}function getsec(str){  var str1=str.substring(1,str.length)*1;  var str2=str.substring(0,1);  if (str2=="s"){    return str1*1000;  }else if (str2=="h"){    return str1*60*60*1000;  }else if (str2=="d"){    return str1*24*60*60*1000;  }    //这是有设定过期时间的使用示例:  //s20是代表20秒  //h是指小时,如12小时则是:h12  //d是天数,30天则:d30}; 示例: setCookie("name","hayden","s20")

删除cookie

function delCookie(name){    var exp = new Date();    exp.setTime(exp.getTime() - 1);    var cval=getCookie(name);    if(cval!=null)    document.cookie= name + "="+cval+";expires="+exp.toGMTString();}

 获取cookie

function getCookie(name){    var arr,reg=new RegExp("(^| )"+name+"=([^;]*)(;|$)");    if(arr=document.cookie.match(reg)){        return unescape(arr[2]);    }else{        return null;    }}

  

最新文章

123

最新摄影

微信扫一扫

第七城市微信公众平台