cookie的使用记录
记录一下项目里面的cookie的获取设置删除,设置不同域名
获取
/**
* [getCookie 获取cookie]
*/
function getCookie(key){
var arr1=document.cookie.split("; ");//由于cookie是通过一个分号+空格的形式串联起来的,所以这里需要先按分号空格截断,变成[name=Jack,pwd=123456,age=22]数组类型;
for(var i=0;i<arr1.length;i++){
var arr2=arr1[i].split("=");//通过=截断,把name=Jack截断成[name,Jack]数组;
if(arr2[0]==key){
return decodeURI(arr2[1]);
}
}
}
设置
/**
* [setCookie 设置cookie]
* [key value t 键 值 时间(秒)]
*/
function setCookie(key,value,t){
var oDate=new Date();
oDate.setDate(oDate.getDate()+t);
document.cookie=key+"="+value+"; expires="+oDate.toDateString();
}
//setCookie(name,'小李',7)
删除
/**
* [removeCookie 移除cookie]
*/
function removeCookie(key){
setCookie(key,"",-1); // 把cookie设置为过期
};
设置不同域名的cookie
注意点:
1:如果是本地要使用ip登录,比如localhost改为:http://127.0.0.1:8081
2:不填写域名是即为本地的cookie
function setCookie(name, value, day, path, domain){
day = day || 30;
path = path || '/';
var str = name + '=' + value + '; ';
if(day) str += 'expires=' + new Date(Date.now() + day * 24 * 3600 * 1000).toGMTString() + '; ';
if(path) str += 'path=' + path + '; ';
if(domain) str += 'domain=' + domain;
document.cookie = str;
};
//eg
// setCookie('token',res.msg.token,1,'/','')
// setCookie('password',res.msg.userInfo.password,1,'/','http://127.0.0.1:8081')