JS-cookie

作者: 壹枕星河 | 来源:发表于2019-03-27 12:28 被阅读239次
cookie 会话跟踪技术

一个网站从打开到浏览(包括这个网站的其他子页面)到最后关闭浏览器整个过程叫一个“会话”。
cookie的存取

document.cookie = "username=zhangsan";
console.log(document.cookie);

注意:cookie是http/https协议下的技术,不支持本地file文件对cookie操作
cookie的时效: expires

 var d = new Date();
d.setxxx(); //将d设置到过期的日期
document.cookie = "username=zhangsan;expires="+d;

cookie的特点
1.只能使用文本
2 单条存储有大小限制 4KB
3 数量限制(一般浏览器,限制大概在50条左右)
4 读取有域名限制 不可跨域读取,只能由来自 写入cookie的 同一域名 的网页可进行读取。
5 时效限制 每个cookie都有时效,最短的有效期是,会话级别:就是当浏览器关闭,那么cookie立即销毁

封装一个存取cookie的函数

    /* cookie的操作(存取)
     * @param key   string  存取的key值
     * @param [value] string  如果传入value,那么就是存cookie,不传就是取cookie
     * @paran [option] object  {expires, path}
     * @return  string 取cookie的时候返回的当前cookie的值
     */
    cookie : function (key, value, option) {
        if(value === undefined){
            // 取cookie
            var cookie = document.cookie;
            var arr = cookie.split("; ");
            var obj = {};
            arr.forEach(function(ele){
                var subarr = ele.split("=");
                obj[subarr[0]] = decodeURIComponent(subarr[1]);
            })
            // 判断
            return obj[key] ? obj[key] : "";
            /* if(obj[key]){
                return obj[key];
            }else {
                return "";
            } */
        }else{
            //存
            var str = key+"="+encodeURIComponent(value);
            if(option){
                // path
                if(option.path){
                    str += ";path="+option.path;
                }
                if(option.expires) {
                    var date = new Date();
                    // 把过期日期设置为option.expires天之后
                    date.setDate(date.getDate() + option.expires);
                    str += ";expires=" + date;
                }
            }
            document.cookie = str;
        }
    }

相关文章

  • Vue 中使用 js-cookie

    js-cookie 官方文档:https://www.npmjs.com/package/js-cookie 一、...

  • 前端中常用的 库 收集

    持续更新 basic https://github.com/js-cookie/js-cookie Date 处理...

  • React-Cookie

    github地址:github.com/js-cookie/js-cookie 在react中使用cookie: ...

  • 存取cookie里面的值

    使用js-cookie插件 1、安装插件 npm install js-cookie --save 2、存值 im...

  • 轻量级JS Cookie插件js-cookie的使用方法

    js-cookieGitHub地址js-cookie具体使用 js-cookie插件是一个JS操作cookie的插...

  • Cookie使用

    介绍两种cookie的使用方法 原生cookie js-cookie插件 区别 js-cookie插件将原生coo...

  • cookie-util.js

    //更好的方式:import Cookies from 'js-cookie'

  • JS-cookie

    cookie 会话跟踪技术 一个网站从打开到浏览(包括这个网站的其他子页面)到最后关闭浏览器整个过程叫一个“会话...

  • js-cookie

    js-cookie 用于处理 cookie 的简单、轻量级 JavaScript APIgitHub官方地址:ht...

  • 仿 VIP

    技术栈 Vue、Vue Router、NodeJS、MongoDB、memory-cache、js-cookie、...

网友评论

    本文标题:JS-cookie

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