其他分享
首页 > 其他分享> > vue 前端守卫 登录验证权限

vue 前端守卫 登录验证权限

作者:互联网

 

页面路由加上标志:

const routes = [
  {
    path: '/user',
    name: 'user',
    meta: {
      title: '个人中心',
      auth: true
    },
    component: () => import(/* webpackChunkName: "user" */ '../pages/user/user.vue')
  }]

auth: true 

下面的路由守卫来判断是否为true,需要验证

false则不需要,直接放行

 

 

router.beforeEach((to, from, next) => {
  let token = localStorage.getItem("token");

  // 需要验证权限的页面
  if (to.meta.auth) {
    axios({
      method: 'post',
      url: Vue.prototype.api + '/user/verify',
      params: {
        token: token
      }
    }).then(res => {
      // 获取返回信息判断token是否有效
      if (res.data.flag === true) {
        next();
      } else {
        next("/login")
      }

    });
  } else {
    // 不需要验证页面直接放行
    next();
  }


    }
                 )
export default router

 

标签:vue,验证,auth,next,守卫,token,user,权限,true
来源: https://www.cnblogs.com/Hello233/p/16330191.html