若没有token,需要跳转到登录页面怎么做

1、在封装的axios请求中的请求拦截器中做:(在数据请求发送之前判断)

// 拦截器
// 添加请求拦截器
axios.interceptors.request.use(
  function (config) {
    // 判断有没有token
    // 第一个判断是确定没有token,需要给跳转到登录页面
    //
    if (!config.headers.token && !config.url.includes("login")) {
      // 说明没有token,直接踢回去让登录
      router.push("/login");
      return;
    }
    // 在发送请求之前做些什么
    return config;
  },
  function (error) {
    // 对请求错误做些什么
    return Promise.reject(error);
  }
);

2、在路由配置文件的全局前置导航守卫中做:(在跳转页面之前,若检查到没有token)

// 可以用去哪聚前置守卫,来做未登录就跳到登录页的功能

router.beforeEach(async (to, from) => {
  let logintoken =sessionStorage.getItem('token');
  if(!logintoken&&to.name=='login'){
    return { name: 'login' }
  }
})

你可能感兴趣的:(html,css,css3,前端,javascript)