Vue实现登录保存token并校验实现保存登录状态


一、登录vue

<script>
import request from "@/axios/baseURL";
import router from "@/router";

// 接口数据初始化
const FORM_DATA = {
  userName: "",
  password: "",
};
export default {
  data() {
    return {
      FORM_DATA,
    };
  },
  created() {
    console.log("登录界面");
  },
  methods: {
    login() {
      request.post("/systemUser/login", this.FORM_DATA).then((res) => {
        var code = res.data.code;
        var message = res.data.message;
        this.$message(message);
        if (code == 0) {
          localStorage.setItem("token", res.data.data.token);
          router.push("/library");
        }
        console.log(res);
      });
    },
  },
};
</script>

二、路由index

// 导航守卫
router.beforeEach((to, from, next) => {
  const token = localStorage.getItem('token');
  const outerPaths = ['/homePage']; // 当前 path 不需要登录也可以进入系统,但是只能操作当前页面
  if (!token && !outerPaths.includes(to.path)) {
    next('/homePage');
  } else {
    // if (to.path == "/auth") {
    //   document.title = to.meta.title  // 进入这个页面会被更改页面标题
    // } else document.title = 'CPS流量变现后台管理系统'
    next();
  }
});

在这里插入图片描述

  • 坚持不懈,努力奋斗,心之所向必定成真。
  • 拥有激情与决心,创造无限可能的未来。
  • 放飞心灵,勇往直前,追逐梦想的星辰大海。
  • 不怕失败,享受过程,每一次尝试都是一种进步。
  • 集中注意力,努力前行,不要停下,直到成功只是习惯。
Vue3 中实现 Token 校验可以分为以下步骤: 1. 用户在登录页面输入用户名和密码,向服务器发送请求进行登录操作。 2. 服务器验证用户的身份信息,如果验证通过,则返回一个 Token 给客户端。 3. 客户端将 Token 存储到本地,可以使用浏览器的 localStorage 或 sessionStorage 存储。 4. 在需要进行 Token 校验的请求中,客户端将 Token 携带在请求头中发送到服务器。 5. 服务器验证 Token 的有效性,如果验证通过,则返回请求的数据;否则,返回 401 或 403 状态码,表示未经授权的访问。 下面是一个示例代码: ```javascript // 登录操作 async function login(username, password) { const response = await axios.post('/api/login', { username, password }) const token = response.data.token localStorage.setItem('token', token) } // 发送需要 Token 校验的请求 async function fetchUser() { const token = localStorage.getItem('token') const response = await axios.get('/api/user', { headers: { Authorization: `Bearer ${token}` } }) return response.data } ``` 在上面的示例代码中,`login` 函数向服务器发送登录请求,如果验证通过,则将服务器返回的 Token 存储到本地的 localStorage 中。在 `fetchUser` 函数中,我们从 localStorage 中获取 Token,然后在请求头中携带 Token 发送请求到服务器进行验证。服务器通过验证后返回请求的数据,否则返回状态码 401 或 403。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

打赏作者

和烨

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

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

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

打赏作者

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

抵扣说明:

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

余额充值