cookie会话技术

cookie会话跟踪技术:
 1.cookie是有大小限制 4KB
2.域的限制,子级能访问父级的cookie,父级不能访问子级的cookie,
3.会有过期时间,过期时间之前一直有效,即使窗口或者浏览器关闭,在所有同源窗口也都是可以共享的。
4.只能存储字符串。
 
cookie会在浏览器和服务器之间来回传递。
 
cookie 的设置:
document.cookie = "name=张三;path=/;expires=过期时间"
      cookie里可以存储值,可以设置路径,"/"写的是根路径,写根路径时,当前文件夹下所有文件都能访问到这个cookie值,不设置路径,只能当前文件能访问这个cookie值,当前文件夹下的其他文件访问不到的。然后写过期时间,如果不写过期时间,关闭页面,cookie就消失。
 
假如过期时间设置一个小时以后:
var d = new Date();  //获取当前时间
d.setHours(d.getHours()+1)  //设置过期时间,也就是当前时间加1小时
document.cookie = "name=张三;path=/;expires="+d
 
    特点:
         1.信息只能存储字在符串中
         2. 时间限制
         3.域的限制
 
将设置cookie做一个封装:
function setCookie(key,val,expires){
  var d = new Date();
  d.setDate(d.getDate()+expires) //这个expires写几过期时间就是几天
 document.cookie = key + "=" +val+ ";path=/;expires="+d
}
setCookie("name","李四",4) 
setCookie("name","张三",7)
 
cookie 的获取 :
console.log(document.cookie)    //name=张三  获取的是一个字符串
console.log(document.cookie.split(";")[0].spit("=")[1]); //这样获取的就是val值
 
将获取cookie做一个封装:
function getCookie(key){
  var cookies = document.cookie;
  var arr = cookies.split("; ") //这里分割的时候分号后要加空格
  for(var i = 0;i<arr.length;i++){
     var newArr = arr[i].split("=");
     if(newArr[0] == key){
       return newArr[1];
     }
   }
 }
console.log(getCookie("name")
 
cookie 的删除
function removeCookie(key){
   setCookie(key,"",-1); //这里把val值设置为空,其实也清掉了val值,后面又设置过期时间为 -1,也是清除作用。
}
removeCookie("name")

转载于:https://www.cnblogs.com/class1/p/11176313.html

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值