Javascript 如何修复next()方法重定向后变量值始终为null
我尝试了一些使用vue cli的软件包。Javascript 如何修复next()方法重定向后变量值始终为null,javascript,vue.js,vuejs2,vue-component,vue-router,Javascript,Vue.js,Vuejs2,Vue Component,Vue Router,我尝试了一些使用vue cli的软件包。 它是vue的2.6.10版。 当我尝试使用router beforeRoute来保护路由时,当我第一次登录时,它工作正常,但当我删除cookie时,route guard根本不会获得cookie的值来传递给api,它在头请求时总是显示null 请检查我下面的代码 我尝试了vuex,但运气不好 import Vue from 'vue' import Router from 'vue-router' import Login from './views/l
它是vue的2.6.10版。
当我尝试使用router beforeRoute来保护路由时,当我第一次登录时,它工作正常,但当我删除cookie时,route guard根本不会获得cookie的值来传递给api,它在头请求时总是显示null 请检查我下面的代码 我尝试了vuex,但运气不好
import Vue from 'vue'
import Router from 'vue-router'
import Login from './views/login/route'
import Dashboard from './views/dashboard/route'
import axios from '../lib/axios'
Vue.use(Router)
const router = new Router({
mode: 'history',
base: process.env.BASE_URL,
routes: [
...Login,
...Dashboard
]
})
router.beforeEach( async (to, from, next) => {
// validate route is auth
if(to.matched.some(record => record.meta.auth)){
var cookie = $cookies.get('basic-app-token');
if(cookie != null){
console.log('before send', cookie);
let res = await axios.get('http://localhost:8000/api/token/check',{
headers: {
Authorization: 'Bearer '+cookie
}
});
console.log('after send', res.data);
if(res.data.success){
next()
}else{
next({name: 'login'})
}
}else{
next({name: 'login'})
}
}else{
next()
}
})
export default router
请求头上的结果始终显示“授权:承载空”。尝试使用Axios的拦截器设置和发送令牌。您可以显示一个简单的棘手pls吗?尝试使用Axios的拦截器设置和发送令牌。您可以显示一个简单的棘手pls吗?