基于Cookie常用操作以及属性介绍
概述
最近项目要用到cookie存储部分用户信息;研究了一下做一下分享
Cookie是服务器保存在浏览器的一小段文本信息,每个Cookie的大小一般不能超过4KB。浏览器每次向服务器发出请求,就会自动附上这段信息。
设置cookie存储
document.cookie='userName=fengkaicahng';
注意设置cookie一次只能存储一条
cookie可以多次设置key相同不会重新赋值而是会新建一条cookie
读取cookie
varallCookies=document.cookie; //一次读取所有cookie字符串形式 //所以一般我们还要做一次转换 varcookiesArray=document.cookie.split(';'); console.log(cookiesArray);
cookie的几个属性
value(必须)一个键值对,用来指定cookie的值
document.cookie='userName=fengkaicahng';
expires指定Cookie过期时间;格式采用Date.toUTCString()
varday=newDate(); day.setTime(day.getTime()+(1*24*60*60*1000)); //设置一天的有效期 //如果不设置;默认时间是当前会话窗口关闭即失效 document.cookie='userName=fengkaicahng;expires="+day+"';
domain指定发送Cookie的域名
varday=newDate(); day.setTime(day.getTime()+(1*24*60*60*1000)); //只有在该域名下才发送cookie, //如果不设置;默认是设置cookie时的域名 //以下配置会在fengkaichang.com的所有子域名下生效 document.cookie='userName=fengkaicahng;expires='+day+';domain=fengkaichang.com;
path指定Cookie的路径
varday=newDate(); day.setTime(day.getTime()+(1*24*60*60*1000)); //只有这个路径和发送到服务器的路径相同才发送cookie可以直接配置/从根目录下匹配这个匹配并不是绝对的, //如果不设置;默认是请求该cookie时的路径 //以下配置会在fengkaichang.com的所有请求路径下生效 //注意path生效的前提是domain匹配成功,否则都是扯淡 document.cookie='userName=fengkaicahng;expires='+day+';domain=fengkaichang.com;path=/'
secure指定Cookie只能在加密协议HTTPS下发送到服务器
varday=newDate(); day.setTime(day.getTime()+(1*24*60*60*1000)); //这个属性的值是一个布尔值 //如果这个通信协议是HTTPS那么协议自动打开 //如果手动设置一下配置不会在普通HTTP协议下发送 document.cookie='userName=fengkaicahng;expires='+day+';domain=fengkaichang.com;path=/;secure=true'
以上这篇基于Cookie常用操作以及属性介绍就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持毛票票。