zoukankan      html  css  js  c++  java
  • 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")
  • 相关阅读:
    if __name__
    Python为什么要self
    ubuntu系统中的svn三连
    Python中读取到16进制数如何转成有符号数值
    知网
    Ubuntu 登陆后黑屏 问题解决
    Ubuntu 开机Recovery-Mode,命令行中操作提示 Read-Only File System 只读文件系统的 问题解决
    句子:霓裳虽美始于宫娥之糙手
    VMware 虚拟机 不能打开的解决方案汇总
    Ubuntu 系统安装 数据恢复软件 ext4magic 通过RPM方式
  • 原文地址:https://www.cnblogs.com/class1/p/11176313.html
Copyright © 2011-2022 走看看