Vue项目实操cookie相关操作封装

1 介绍

在vue中通常使用axios进项http请求,但是axios不带cookie,这里可自己获取cookie,放到参数中进行登录验证等,方法不唯一。

2 utils

cookie.js

/**
 * 读取cookie,
 * 需要注意的是cookie是不能存中文的,如果需要存中文,解决方法是后端先进行编码encode(),
 * 前端取出来之后用decodeURI('string')解码。(安卓可以取中文cookie,IOS不行)
 * */
export const b_getCookie = (c_name) => {
  var name = c_name + "=";
  var ca = document.cookie.split(';');
  for (var i = 0; i < ca.length; i++) {
    var c = ca[i];
    while (c.charAt(0) == ' ') c = c.substring(1);
    if (c.indexOf(name) != -1) {
      return c.substring(name.length, c.length);
    }
  }
  return "";
}

/**
 * 设置cookie
 * c_name: cookie的名字,
 * value : cookie值,
 * expiredays: 过期时间(天数)
 * */
export const b_setCookie = (c_name, value, expiredays) => {
  var exdate = new Date();
  exdate.setDate(exdate.getDate() + expiredays);
  document.cookie = c_name + "=" + escape(value) + ((expiredays == null) ? "" : ";expires=" + exdate.toGMTString());
}


/**
 * 删除cookie
 * c_name: cookie的名字,
 * */
export const b_delCookie = (c_name) => {
  var exp = new Date();
  exp.setTime(exp.getTime() - 1);
  var cval = getCookie(c_name);
  if (cval != null)
    document.cookie = c_name + "=" + cval + ";expires=" + exp.toGMTString();
}

3 Test.vue

<template>
  <div>
    <el-row>
      <el-input v-model="input" placeholder="请输入内容"></el-input>
      <el-button @click="getCookie">获取cookie</el-button>
      <el-button @click="setCookie">设置cookie</el-button>
    </el-row>
  </div>
</template>
<script>
  import {b_getCookie, b_setCookie} from "../utils/cookie";

  export default {
    name: "Test",
    data() {
      return {
        input: ''
      }
    },
    methods: {
      getCookie() {
        console.log("==========获取cookie===========")
        let username = b_getCookie("username")
        let password = b_getCookie("password")
        console.log(username);
        console.log(password);
      },
      setCookie() {
        console.log("设置cookie");
        b_setCookie("c_key", "c_value", 30)
      }
    }
  }
</script>

<style scoped>

</style>
  • 1
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
很抱歉,我无法提供一个完整的实操项目,因为这需要花费相当的时间和资源来开发一个完整的旅游项目。然而,我可以给出一个简单的示例,以帮助你开始一个基于Spring Boot和Vue的旅游项目。 1. 后端(Spring Boot): - 创建一个Spring Boot项目,并配置好相关依赖。 - 设计数据库模型,例如旅游目的地、景点、酒店等。 - 使用JPA或MyBatis等框架创建实体类和数据访问层。 - 创建RESTful API接口,用于处理前端的请求和响应。 - 实现用户认证和授权功能,可以使用Spring Security和JWT等。 - 部署并运行后端服务。 2. 前端Vue): - 使用Vue CLI创建一个基本的Vue项目。 - 设计并创建页面和组件,如首页、目的地列表、景点详情等。 - 使用Vue Router实现前端路由,用于导航不同的页面。 - 使用Axios或Fetch等库发送HTTP请求,与后端API进行通信。 - 根据后端提供的API接口,获取数据并展示在前端界面上。 - 实现用户注册、登录和身份验证等功能。 - 部署并运行前端应用程序。 3. 数据库: - 选择适合项目需求的数据库,如MySQL或MongoDB。 - 根据数据库模型创建相应的表或集合,并建立关联关系。 - 使用SQL或NoSQL语句进行数据操作,如插入、更新和查询等。 请注意,这只是一个简化的示例项目,实际的项目可能涉及更多的功能和模块。你可以根据自己的需求和技术能力来扩展和完善这个示例项目。同时,也可以参考相关的文档和教程,以便更好地理解和实践Spring Boot和Vue的开发。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

有勇气的牛排

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值