Vue项目使用Cookie,以Json格式存入与读取Cookie,设置过期时间以及删除操作

简介: 这篇文章介绍了在Vue项目中如何使用JavaScript操作Cookie,包括设置、读取、设置过期时间以及删除Cookie的方法。

前端项目开发时,常常需要很多小技巧,比如使用Cookie巧妙实现某个效果。此次就以Vue项目记录一下如何使用Cookie。

cookie.js

/**
 * 写入cookie
 * @param {*} name 
 * @param {*} value 
 * @param {*} time 
 */
function setCookie(name, value, time) {
   
    var strsec = getsec(time);
    var exp = new Date();
    exp.setTime(exp.getTime() + strsec * 1);
    document.cookie = name + "=" + escape(value) + ";expires=" + exp.toGMTString();
}

/**
 * 设置过期时间
 * @param {*} str 
 * @returns 
 */
function getsec(str) {
   
    var str1 = str.substring(1, str.length) * 1;
    var str2 = str.substring(0, 1);
    if (str2 == "s") {
   
        return str1 * 1000;
    } else if (str2 == "h") {
   
        return str1 * 60 * 60 * 1000;
    } else if (str2 == "d") {
   
        return str1 * 24 * 60 * 60 * 1000;
    }
}
/**
 * 读取cookie
 * @param {*} name 
 * @returns 
 */
function getCookie(name) {
   
    var arr, reg = new RegExp("(^| )" + name + "=([^;]*)(;|$)");
    if (arr = document.cookie.match(reg)) return unescape(arr[2]);
    else return null;
}


/**
 * 删除cookie
 * @param {*} name 
 */
function delCookie(name) {
   
    var exp = new Date();
    exp.setTime(exp.getTime() - 1);
    var cval = getCookie(name);
    if (cval != null) document.cookie = name + "=" + cval + ";expires=" + exp.toGMTString();
}

export {
   
    setCookie,
    getCookie,
    delCookie  
}

引用Cookie的文件,如index.vue

import {
   
  setCookie,
  getCookie,
  delCookie
} from '../utils/cookie';

methods: {
   
    setValToCookie() {
   
        let target_json = {
   };
        target_json['username'] = "Vegeta";
        setCookie("target_json", JSON.stringify(target_json), "s10");// 设置该cookie的键值以及10秒的过期时间
    },

    getValToCookie() {
   
        let target_str = getCookie("target_json")
        console.log("target_str =>", target_str)
        if(target_str != null) {
   
            let target_json = JSON.parse(target_str)
                if(target_json.username == 'Vegeta') {
   
                    // Todo
                    delCookie("target_json")// 删除该Cookie
              }
        }
    }
}
目录
相关文章
|
14天前
|
JSON JavaScript 数据格式
vue写入json数据到文本中+vue引入cdn的用法
vue写入json数据到文本中+vue引入cdn的用法
38 10
|
12天前
|
XML JSON JavaScript
js的json格式
js的json格式
|
12天前
|
JSON 数据格式
Blob格式转json格式,拿到后端返回的json数据
文章介绍了如何将后端返回的Blob格式数据转换为JSON格式,并处理文件下载和错误提示。
24 0
Blob格式转json格式,拿到后端返回的json数据
|
11天前
|
JSON 数据格式 Python
6-1|Python如何将json转化为字符串写到文件内 还保留json格式
6-1|Python如何将json转化为字符串写到文件内 还保留json格式
|
2月前
|
存储
【Azure APIM】APIM 策略语句如何来设置多个Cookie值让浏览器保存
【Azure APIM】APIM 策略语句如何来设置多个Cookie值让浏览器保存
|
2月前
|
JSON Java Android开发
Android 开发者必备秘籍:轻松攻克 JSON 格式数据解析难题,让你的应用更出色!
【8月更文挑战第18天】在Android开发中,解析JSON数据至关重要。JSON以其简洁和易读成为首选的数据交换格式。开发者可通过多种途径解析JSON,如使用内置的`JSONObject`和`JSONArray`类直接操作数据,或借助Google提供的Gson库将JSON自动映射为Java对象。无论哪种方法,正确解析JSON都是实现高效应用的关键,能帮助开发者处理网络请求返回的数据,并将其展示给用户,从而提升应用的功能性和用户体验。
50 1
|
2月前
|
XML JSON Java
使用IDEA+Maven搭建整合一个Struts2+Spring4+Hibernate4项目,混合使用传统Xml与@注解,返回JSP视图或JSON数据,快来给你的SSH老项目翻新一下吧
本文介绍了如何使用IntelliJ IDEA和Maven搭建一个整合了Struts2、Spring4、Hibernate4的J2EE项目,并配置了项目目录结构、web.xml、welcome.jsp以及多个JSP页面,用于刷新和学习传统的SSH框架。
38 0
使用IDEA+Maven搭建整合一个Struts2+Spring4+Hibernate4项目,混合使用传统Xml与@注解,返回JSP视图或JSON数据,快来给你的SSH老项目翻新一下吧
|
2月前
|
JSON 开发工具 数据格式
【Azure Event Hub】Event Hub的Process Data页面无法通过JSON格式预览数据
【Azure Event Hub】Event Hub的Process Data页面无法通过JSON格式预览数据
|
2月前
|
Java 应用服务中间件 nginx
【Azure 环境】Azure应用程序网关设置set_Cookie=key=value; SameSite=Strict; HTTPOnly,AzureAD登录使用cookie时使用不了的案例记录
【Azure 环境】Azure应用程序网关设置set_Cookie=key=value; SameSite=Strict; HTTPOnly,AzureAD登录使用cookie时使用不了的案例记录
|
11天前
|
存储 缓存 数据处理
php学习笔记-php会话控制,cookie,session的使用,cookie自动登录和session 图书上传信息添加和修改例子-day07
本文介绍了PHP会话控制及Web常用的预定义变量,包括`$_REQUEST`、`$_SERVER`、`$_COOKIE`和`$_SESSION`的用法和示例。涵盖了cookie的创建、使用、删除以及session的工作原理和使用,并通过图书上传的例子演示了session在实际应用中的使用。
php学习笔记-php会话控制,cookie,session的使用,cookie自动登录和session 图书上传信息添加和修改例子-day07

热门文章

最新文章

下一篇
无影云桌面