广告
返回顶部
首页 > 资讯 > 前端开发 > JavaScript >vuex+axios如何实现登录验证并且保存登录状态
  • 750
分享到

vuex+axios如何实现登录验证并且保存登录状态

2024-04-02 19:04:59 750人浏览 八月长安
摘要

小编给大家分享一下Vuex+axiOS如何实现登录验证并且保存登录状态,希望大家阅读完这篇文章之后都有所收获,下面让我们一起去探讨吧!第一步:安装axios 、vuex npm i -s axios npm

小编给大家分享一下Vuex+axiOS如何实现登录验证并且保存登录状态,希望大家阅读完这篇文章之后都有所收获,下面让我们一起去探讨吧!

第一步:安装axios 、vuex npm i -s axios npm i -s vuex 执行这两句 ,vue等环境搭建就不废话了

第二步:配置main.js文件

vuex+axios如何实现登录验证并且保存登录状态

上图不上码,菊花万人捅,附上代码

// The Vue build version to load with the `import` command
// (runtime-only or standalone) has been set in webpack.base.conf with an alias.
import Vue from 'vue'
import App from './App'
import router from './router'
import iView from 'iview';
import 'iview/dist/styles/iview.CSS';
import locale from 'iview/dist/locale/en-US';
import VueParticles from 'vue-particles';
import axios from 'axios' ;
import Vuex from 'vuex' //引入状态管理
 
Vue.use(VueParticles) ;
Vue.use(iView, { locale });
Vue.config.productionTip = false ;
Vue.prototype.$Http = axios ;
Vue.use(Vuex) ;
 
 
const ADD_COUNT = 'ADD_COUNT'; // 用常量代替事件类型,使得代码更清晰
const REMOVE_COUNT = 'REMOVE_COUNT';
//注册状态管理全局参数
var store = new Vuex.Store({
 state:{
 token:'',
 userID:'',
 },
 mutations: {
 //写法与getters相类似
 //组件想要对于vuex 中的数据进行的处理
 //组件中采用this.$store.commit('方法名') 的方式调用,实现充分解耦
 //内部操作必须在此刻完成(同步)
 [ADD_COUNT] (state, token) { // 第一个参数为 state 用于变更状态 登录
  sessionStorage.setItem("token", token);
  state.token = token;
 },
 [REMOVE_COUNT] (state, token) { // 退出登录
 
  sessionStorage.removeItem("token", token);
 
  state.token = token;
 },
 }
});
 
 
router.beforeEach((to, from, next) => {
 iView.LoadingBar.start();//loadong 效果
 
 store.state.token = sessionStorage.getItem('token');//获取本地存储的token
 
 if (to.meta.requireAuth) { // 判断该路由是否需要登录权限
 if (store.state.token !== "") { // 通过vuex state获取当前的token是否存
  next();
 }
 else {
  next({
  path: '/login',
  query: {redirect: to.fullPath} // 将跳转的路由path作为参数,登录成功后跳转到该路由
  })
 }
 }
 else {
 next();
 }
})
 
router.afterEach(route => {
 iView.LoadingBar.finish();
});
 
 

new Vue({
 el: '#app',
 router,
 store, //注册组件
 components: { App },
 template: '<App/>'
}) ;

第三步:进行登录 操作,调用main.js 中定义好的修改token的方法[ADD_COUNT]

vuex+axios如何实现登录验证并且保存登录状态

附上请求部分代码

this.$http({
 method: 'get',
 url: '/api/login',
}).then(function(res){
 var JSON = res.data
 console.log(json.data);
 this.$Message.success('Success!');
 
 this.$store.commit('ADD_COUNT', json.data.token);
 
 let clock = window.setInterval(() => {
 this.totalTime-- ;
 if (this.totalTime < 0) {
  window.clearInterval(clock) ;
  this.$Loading.finish();
  this.$router.push('/') ;
 }
 },1000)
}.bind(this)).catch(function(err){
 this.$Message.error('登录失败,错误:'+ err);
 this.$Loading.error();
}.bind(this))

差点忘记了一点,在router中要配置需要验证是否登录的请求

vuex+axios如何实现登录验证并且保存登录状态

附上router/index.js 代码

import Vue from 'vue'
import Router from 'vue-router'
import Login from '@/components/Login/Login'
import P404 from '@/components/404/404'
import Main from '@/components/Main'
 
Vue.use(Router)
 
export default new Router({
 mode: 'history',
 routes: [
 {
  path: '/login',//登录页
  name: 'Login',
  component: Login
 },
 {
  path: '/',//首页
  name: 'Main',
  component: Main,
  meta: {
  requireAuth: true, // 添加该字段,表示进入这个路由是需要登录的
  },
 },
 { path: '*', component: P404 } //这里是保证错误地址会跳转到404界面进行提示
 ]
})

看完了这篇文章,相信你对“vuex+axios如何实现登录验证并且保存登录状态”有了一定的了解,如果想了解更多相关知识,欢迎关注编程网JavaScript频道,感谢各位的阅读!

--结束END--

本文标题: vuex+axios如何实现登录验证并且保存登录状态

本文链接: https://www.lsjlt.com/news/72123.html(转载时请注明来源链接)

有问题或投稿请发送至: 邮箱/279061341@qq.com    QQ/279061341

本篇文章演示代码以及资料文档资料下载

下载Word文档到电脑,方便收藏和打印~

下载Word文档
猜你喜欢
  • vuex+axios如何实现登录验证并且保存登录状态
    小编给大家分享一下vuex+axios如何实现登录验证并且保存登录状态,希望大家阅读完这篇文章之后都有所收获,下面让我们一起去探讨吧!第一步:安装axios 、vuex npm i -s axios npm...
    99+
    2022-10-19
  • vuex如何实现登录状态的存储以及未登录状态不允许浏览
    小编给大家分享一下vuex如何实现登录状态的存储以及未登录状态不允许浏览,希望大家阅读完这篇文章之后都有所收获,下面让我们一起去探讨吧!导航守卫正如其名,vue-router``` 提供的导航守卫主要用来通...
    99+
    2022-10-19
  • 怎么使用Laravel和SSR实现保存登录状态
    这篇“怎么使用Laravel和SSR实现保存登录状态”文章的知识点大部分人都不太理解,所以小编给大家总结了以下内容,内容详细,步骤清晰,具有一定的借鉴价值,希望大家阅读完这篇文章能有所收获,下面我们一起来看看这篇“怎么使用Laravel和S...
    99+
    2023-07-05
  • 如何使用vue判断验证用户登录状态
    这篇文章将为大家详细讲解有关如何使用vue判断验证用户登录状态,小编觉得挺实用的,因此分享给大家做个参考,希望大家阅读完这篇文章后可以有所收获。使用vue判断验证用户登录状态导航钩子类似于生命周期钩子,包含...
    99+
    2022-10-19
  • Vue如何实现验证码登录
    本文小编为大家详细介绍“Vue如何实现验证码登录”,内容详细,步骤清晰,细节处理妥当,希望这篇“Vue如何实现验证码登录”文章能帮助大家解决疑惑,下面跟着小编的思路慢慢深入,一起来学习新知识吧。效果展示第一步:创建验证码组件这里是组件的代码...
    99+
    2023-06-29
  • php如何实现验证码登录
    本文操作环境:windows10系统、php 7、thinkpad t480电脑。验证码在我们的日常生活中非常常见,使用验证码有诸多好处,如:防止恶意的破解密码。如一些黑客为了获取到用户信息,通过不同的手段向服务器发送数据,验证猜测用户信息...
    99+
    2017-10-10
    php 验证码
  • javaweb如何实现登录验证码
    这篇文章给大家分享的是有关javaweb如何实现登录验证码的内容。小编觉得挺实用的,因此分享给大家做个参考,一起跟随小编过来看看吧。使用:Controller:生成验证码@RequestMapping("/user/check.j...
    99+
    2023-05-30
    javaweb
  • 如何用JDBC实现验证登录
    这篇文章主要介绍“如何用JDBC实现验证登录”,在日常操作中,相信很多人在如何用JDBC实现验证登录问题上存在疑惑,小编查阅了各式资料,整理出简单好用的操作方法,希望对大家解答”如何用JDBC实现验证登录”的疑惑有所帮助!接下来,请跟着小编...
    99+
    2023-06-02
  • Spring Security如何实现登录验证
    这篇文章主要讲解了“Spring Security如何实现登录验证”,文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习“Spring Security如何实现登录验证”吧!一、理...
    99+
    2023-06-26
  • Java如何实现Token登录验证
    这篇文章主要介绍“Java如何实现Token登录验证”,在日常操作中,相信很多人在Java如何实现Token登录验证问题上存在疑惑,小编查阅了各式资料,整理出简单好用的操作方法,希望对大家解答”Java如何实现Token登录验证”的疑惑有所...
    99+
    2023-07-05
  • vue router+vuex如何实现首页登录验证判断逻辑
    这篇文章主要为大家展示了“vue router+vuex如何实现首页登录验证判断逻辑”,内容简而易懂,条理清晰,希望能够帮助大家解决疑惑,下面让小编带领大家一起研究并学习一下“vue router+vuex...
    99+
    2022-10-19
  • java异地登录验证如何实现
    要实现Java的异地登录验证,可以通过以下步骤进行操作:1. 在用户登录成功后,将用户的登录信息存储到数据库或缓存中,包括用户ID、...
    99+
    2023-08-22
    java
  • vue如何实现登录路由验证
    小编给大家分享一下vue如何实现登录路由验证,希望大家阅读完这篇文章之后都有所收获,下面让我们一起去探讨吧!vue的项目的登录状态如果用vuex状态管理,页面一刷新vuex管理的状态就会消失,这样登录路由验...
    99+
    2022-10-19
  • vue+springboot如何实现登录验证码
    这篇文章主要介绍vue+springboot如何实现登录验证码,文中介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们一定要看完!先看效果图在login页面添加验证码html在后端pom文件添加kaptcha依赖<dependenc...
    99+
    2023-06-15
  • php如何实现app的验证登录
    这篇文章主要介绍了php如何实现app的验证登录的相关知识,内容详细易懂,操作简单快捷,具有一定借鉴价值,相信大家阅读完这篇php如何实现app的验证登录文章都会有所收获,下面我们一起来看看吧。一、前置知识熟悉PHP语言基础熟悉HTTP请求...
    99+
    2023-07-05
  • Vue项目如何保持用户登录状态(localStorage+vuex刷新页面后状态依然保持)
    目录前言一、实现效果二、实现步骤及涉及要点三、涉及代码总结前言 在前端项目开发中,实现用户的登陆注册功能时常常会有一个问题,那就是我们设置的登录状态,在浏览器页面刷新后就消失了,这其...
    99+
    2022-11-13
  • Go WEB框架使用拦截器验证用户登录状态实现
    目录wego拦截器main函数登录逻辑登录拦截器的实现index页面的实现wego拦截器 wego拦截器是一个action(处理器函数)之前或之后被调用的函数,通常用于处理一些公共逻...
    99+
    2022-11-13
  • 如何用php+AJax+json实现登录验证
    本文小编为大家详细介绍“如何用php+AJax+json实现登录验证”,内容详细,步骤清晰,细节处理妥当,希望这篇“如何用php+AJax+json实现登录验证”文章能帮助大家解决疑惑,下面跟着小编的思路慢慢深入,一起来学习新知识吧。随着W...
    99+
    2023-07-05
  • SpringBoot登录验证token拦截器如何实现
    这篇文章主要讲解了“SpringBoot登录验证token拦截器如何实现”,文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习“SpringBoot登录验证token拦截器如何实现”吧!用户访问接口验...
    99+
    2023-07-02
  • vue如何实现登录时图形验证码
    这篇文章主要介绍vue如何实现登录时图形验证码,文中介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们一定要看完!具体内容如下效果图:点击图案可以切换字符1.新建 Identify.vue 组件<template> ...
    99+
    2023-06-29
软考高级职称资格查询
编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
  • 官方手机版

  • 微信公众号

  • 商务合作