后台管理权限中的路由跳转的思路

本文介绍了三种后台管理权限中的路由跳转思路:通过后端查询用户角色获取权限标识,与本地动态路由匹配筛选;后端直接返回动态路由,转化为组件对象添加到路由;以及在导航守卫中验证地址是否在允许访问的列表内。
摘要由CSDN通过智能技术生成

思路一: 登录之后,后端根据该用户的角色查询当该用户的权限信息,这些权限信息包含的标识是和本地完整的动态路由的name是有匹配关系的。我们登录之后拿到权限标识和本地的动态路由进行匹配筛选出属于当前用户的动态路由,然后通过router.addRoutes方法,直接添加到路由实例中去

import Vue from 'vue'
import VueRouter from 'vue-router'
Vue.use(VueRouter)

// 导入组件
import login from '@/views/login'
import index from '@/views/index'

import good from '@/views/good'
import goodAdd from '@/views/good/add'
import article from '@/views/article'
import articleAdd from '@/views/article/add'


// 完整的静态路由
const constRoutes = [
  { path:'/', component:index, name:'index'  },
  { path:'/login', component:login, name:'login'  }
]
// 完整的动态路由
export const asyncRoutes = [
  { path:'/good', component:good, name:'good'  },
  { path:'/good/add', component:goodAdd, name:'goodAdd'  },
  { path:'/article', component:article, name:'article'  },
  { path:'/article/add', component:articleAdd, name:'articleAdd'  },
]

const router = new VueRouter({
  // 静态路由 + 动态路由
  // routes:[...constRoutes,...asyncRoutes]
  // 静态路由
  routes:[...constRoutes]
})

export default router

定义json模拟数据

 

<template>
  <div>
    <router-view></router-view
后台管理系统的路由守卫原理是通过在路由导航过程的特定时机,对用户进行权限验证和授权,以实现对页面或路由的访问控制。 在一般的后台管理系统,通常会存在不同角色的用户,比如管理员、普通用户等,不同角色的用户对系统的功能模块或页面可能拥有不同的权限路由守卫的作用就是在用户访问某个页面之前,对用户进行身份认证和权限验证,确保用户具有访问该页面的合法权限路由守卫一般有以下几种类型: 1. 身份认证守卫(Authentication Guard):用于验证用户是否已经登录或者是否具有有效的身份信息。当用户未登录或者身份信息无效时,会将用户重定向至登录页面。 2. 权限守卫(Authorization Guard):用于验证用户是否具有访问某个页面或执行某个操作的权限权限守卫会根据用户的角色或权限配置信息,判断用户是否具有相应的权限,若无权限则可能进行拦截或跳转到无权限提示页面。 3. 路由守卫(Route Guard):用于对路由导航进行拦截和控制,可以在路由导航前、路由导航后、路由导航取消时执行一些逻辑操作。可以用于在路由导航前进行身份认证和权限验证,也可以用于在路由导航后进行一些后续操作。 路由守卫的实现方式可以根据具体的框架和需求而有所差异。一般来说,开发者可以通过定义守卫类,然后在路由配置指定需要应用的守卫,或者通过装饰器等方式对路由进行注解,从而实现路由守卫的功能。在守卫,可以访问用户的身份信息和权限配置信息,进行相应的验证和判断。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值