美文网首页
cookie操作及清除所有

cookie操作及清除所有

作者: lesdom | 来源:发表于2019-05-05 15:51 被阅读0次
    export default {
        /**
         * cookie操作
         * 增 删 获取
         */
        cookie: {
            set: function (key, value,expireSeconds) {
                document.cookie = key + '=' + value + ';' + expireSeconds;
            },
            get: function (key) {
                // cookie 里获取 access_token
                let strCookie = document.cookie;
                // 将多cookie切割为多个名/值对
                let arrCookie = strCookie.split(';');
                let accessToken;
                // 遍历cookie数组,处理每个cookie对
                for (let i = 0; i < arrCookie.length; i++) {
                    let arr = arrCookie[i].split('=');
                    // 找到名称为access_token的cookie,并返回它的值
                    if (key === arr[0]) {
                        accessToken = arr[1];
                        break;
                    }
                }
                return accessToken;
            },
            delete: function (key) {
                let myDate = new Date();
                myDate.setTime(-1000); // 设置时间
                document.cookie = key + "=''; expires=" + myDate.toGMTString();
            }
        }
    };
    
    

    清除所有cookie

    // 清除所有cookie
    clearAllCookie () {
        let date=new Date();
        date.setTime(date.getTime()-10000);
        let keys = document.cookie.match(/[^ =;]+(?=\=)/g);
        console.log("需要删除的cookie名字:"+keys);
        if (keys) {
            for (let i =  keys.length; i--;)
              document.cookie=keys[i]+"=0; expire="+date.toGMTString()+"; path=/";
        }
    }
    

    清除本域名cookie

    deleteCookies(){
      let keys = document.cookie.match(/[^ =;]+(?==)/g);
      if (keys) {
        for (var i = keys.length; i--;) {
          document.cookie = keys[i] + '=0;path=/;expires=' + new Date(0).toUTCString() // 清除当前域名下的,例如:m.ratingdog.cn
          document.cookie = keys[i] + '=0;path=/;domain=' + document.domain + ';expires=' + new Date(0).toUTCString() // 清除当前域名下的,例如 .m.ratingdog.cn
          document.cookie = keys[i] + '=0;path=/;domain=ratingdog.cn;expires=' + new Date(0).toUTCString() // 清除一级域名下的或指定的,例如 .ratingdog.cn
        }
      }
    }
    

    网站导航

    网站导航

    相关文章

      网友评论

          本文标题:cookie操作及清除所有

          本文链接:https://www.haomeiwen.com/subject/whrhoqtx.html