vue+axios 前端实现登录拦截(路由拦截、http拦截)
一、路由拦截 登录拦截逻辑 第一步:路由拦截 首先在定义路由的时候就需要多添加一个自定义字段 requireAuth ,用于判断该路由的访问是否需要登录。如果用户已经登录,则顺利进入路由, 否则就进入登录页面。 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 const routes = [ { path: '/' , name: '/' , component: Index }, { path: '/repository' , name: 'repository' , meta: { requireAuth: true , // 添加该字段,表示进入这个路由是需要登录的 }, component: Repository }, { path: '/login' , name: 'login' , component: Login } ]; 定义完路由后,我们主要是利用 vue-router 提供的钩子函数 beforeEach() 对路由进行判断。 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 router.beforeEach((to, from , next) => { if (to.meta.requireAuth) { // 判断该路由是否需要登录权限 if (store.state