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
              }
        }
    }
}
目录
相关文章
|
5月前
|
JSON 前端开发 应用服务中间件
配置Nginx根据IP地址进行流量限制以及返回JSON格式数据的方案
最后,记得在任何生产环境部署之前,进行透彻测试以确保一切运转如预期。遵循这些战术,守卫你的网络城堡不再是难题。
252 3
|
10月前
|
JSON 前端开发 搜索推荐
关于商品详情 API 接口 JSON 格式返回数据解析的示例
本文介绍商品详情API接口返回的JSON数据解析。最外层为`product`对象,包含商品基本信息(如id、name、price)、分类信息(category)、图片(images)、属性(attributes)、用户评价(reviews)、库存(stock)和卖家信息(seller)。每个字段详细描述了商品的不同方面,帮助开发者准确提取和展示数据。具体结构和字段含义需结合实际业务需求和API文档理解。
|
11月前
|
JSON 人工智能 算法
探索大型语言模型LLM推理全阶段的JSON格式输出限制方法
本篇文章详细讨论了如何确保大型语言模型(LLMs)输出结构化的JSON格式,这对于提高数据处理的自动化程度和系统的互操作性至关重要。
1511 48
|
JSON JavaScript Java
对比JSON和Hessian2的序列化格式
通过以上对比分析,希望能够帮助开发者在不同场景下选择最适合的序列化格式,提高系统的整体性能和可维护性。
403 3
|
JSON API 数据安全/隐私保护
拍立淘按图搜索API接口返回数据的JSON格式示例
拍立淘按图搜索API接口允许用户通过上传图片来搜索相似的商品,该接口返回的通常是一个JSON格式的响应,其中包含了与上传图片相似的商品信息。以下是一个基于淘宝平台的拍立淘按图搜索API接口返回数据的JSON格式示例,同时提供对其关键字段的解释
|
安全 JavaScript
如何在`package.json`中正确设置依赖版本范围?
正确设置 `package.json` 中的依赖版本范围需要综合考虑项目的需求、依赖库的稳定性和兼容性,以及开发和维护的便利性等因素。通过合理选择版本范围符号,并结合定期的审查和测试,可以有效地管理项目依赖,确保项目的稳定运行。
420 1
|
JSON 数据格式 索引
Python中序列化/反序列化JSON格式的数据
【11月更文挑战第4天】本文介绍了 Python 中使用 `json` 模块进行序列化和反序列化的操作。序列化是指将 Python 对象(如字典、列表)转换为 JSON 字符串,主要使用 `json.dumps` 方法。示例包括基本的字典和列表序列化,以及自定义类的序列化。反序列化则是将 JSON 字符串转换回 Python 对象,使用 `json.loads` 方法。文中还提供了具体的代码示例,展示了如何处理不同类型的 Python 对象。
469 1
|
JSON Java 数据格式
springboot中表字段映射中设置JSON格式字段映射
springboot中表字段映射中设置JSON格式字段映射
502 1
|
1月前
|
JSON API 数据格式
淘宝拍立淘按图搜索API系列,json数据返回
淘宝拍立淘按图搜索API系列通过图像识别技术实现商品搜索功能,调用后返回的JSON数据包含商品标题、图片链接、价格、销量、相似度评分等核心字段,支持分页和详细商品信息展示。以下是该API接口返回的JSON数据示例及详细解析:
|
1月前
|
JSON 算法 API
Python采集淘宝商品评论API接口及JSON数据返回全程指南
Python采集淘宝商品评论API接口及JSON数据返回全程指南