Vue3 axios响应拦截器处理接口返回401未登录跳转登录页

05-11 阅读 0评论

问题:

Vue3 axios响应拦截器处理接口返回401未登录跳转登录页,Vue3 axios响应拦截器处理接口返回401未登录跳转登录页,词库加载错误:未能找到文件“C:\Users\Administrator\Desktop\火车头9.8破解版\Configuration\Dict_Stopwords.txt”。,接口,解决方案,登录,第1张
(图片来源网络,侵删)
  1. 在 asiox 使用 useRouter 实例化创建 router 路由对象,在 response 响应拦截器里为undefined访问不到
  2. 使用 window.location.href = '/login' 跳转登录页, 本地可以正常跳转,测试环境页面会显示 not found 404, 测试环境访问地址大概是这样 ip:8080/pm/#/login , 本地没有 /pm

解决方案

  1. 在main.ts文件有引入 router 并 app.use(router) 注入路由
  2. 这个router在axios文件响应拦截里也可以访问到router对象
  3. 这样就可以愉快的用router.push('/login')

代码示例

router文件

import service from '@/views/service'
import { createRouter, createWebHashHistory, createWebHistory } from 'vue-router'
const router = createRouter({
  // history: createWebHistory(),
  history: createWebHashHistory(),
  routes: [
    {
      path: '/',
      component: () => import('@/home/index.vue'),
    },
    {
      path: '/login',
      name: '/login',
      component: () => import('@/views/login/index.vue'),
    },
  ],
})
export default router

axios文件

import axios from 'axios'
import { ElMessage } from 'element-plus'
// 引入定义的 router 实例
import router from '../router'
const request: any = axios.create({
  baseURL: '/api',
  timeout: 600000,
})
function redirectLogin() {
  router?.push('/login')
}
request.interceptors.response.use(
  (response: any) => {
  	// 未登录回到登录页
    if (response.data?.code === '401') {
    	return router?.push('/login')
    }
    if (response.data.code !== '200') {
      ElMessage.error(response.data.msg)
       return Promise.reject(response.data)
     } else {
       return response.data.data
     }
  },
  (error: any) => {
    return Promise.reject(error)
  }
)
export default request
Vue3 axios响应拦截器处理接口返回401未登录跳转登录页,Vue3 axios响应拦截器处理接口返回401未登录跳转登录页,词库加载错误:未能找到文件“C:\Users\Administrator\Desktop\火车头9.8破解版\Configuration\Dict_Stopwords.txt”。,接口,解决方案,登录,第2张
(图片来源网络,侵删)
Vue3 axios响应拦截器处理接口返回401未登录跳转登录页,Vue3 axios响应拦截器处理接口返回401未登录跳转登录页,词库加载错误:未能找到文件“C:\Users\Administrator\Desktop\火车头9.8破解版\Configuration\Dict_Stopwords.txt”。,接口,解决方案,登录,第3张
(图片来源网络,侵删)

免责声明
本网站所收集的部分公开资料来源于AI生成和互联网,转载的目的在于传递更多信息及用于网络分享,并不代表本站赞同其观点和对其真实性负责,也不构成任何其他建议。
文章版权声明:除非注明,否则均为主机测评原创文章,转载或复制请以超链接形式并注明出处。

发表评论

快捷回复: 表情:
评论列表 (暂无评论,人围观)

还没有评论,来说两句吧...

目录[+]