当前位置:网站首页 > Vue.js开发 > 正文

VUE-axios统一增加请求头并根据接口返回的状态码判断用户登录状态并跳转登录页

背景:后台接口返回code==501表示用户是未登录状态,需要登录才可访问;

main.js中通过http拦截做路由跳转

 import Vue from 'vue' import Axios from 'axios' Vue.prototype.$axios = Axios import { Loading, Message, MessageBox } from 'element-ui' // 超时时间 Axios.defaults.timeout = 5000 // http请求拦截器 var loadinginstace Axios.interceptors.request.use(config => { config.headers.common ={ 'Content-Type': "application/x-www-form-urlencoded", 'Access-Control-Allow-Origin':'*', 'Access-Control-Allow-Headers':'X-Requested-With,Content-Type', 'Access-Control-Allow-Methods':'PUT,POST,GET,DELETE,OPTIONS', 'user-id': library.getData("id")==undefined?'':library.getData("id") } // element ui Loading方法 loadinginstace = Loading.service({ fullscreen: true }) return config }, error => { loadinginstace.close(); Message.error({ message: '网络不给力,请稍后再试' }) return Promise.reject(error) }) //http响应拦截器 Axios.interceptors.response.use(data => { // 响应成功关闭loading loadinginstace.close(); const code = data.data.code; if(code == 501) { //未登录 MessageBox.alert('请先登录', '提示', { confirmButtonText: '确定', callback: action => { router.replace({ name: 'login', // query: {redirect: router.currentRoute.fullPath} //登录后再跳回此页面时要做的配置 }) } }); } return data }, error => { loadinginstace.close(); Message.error({ message: '网络不给力,请稍后再试' }) return Promise.reject(error) })

解决vue axios的封装 请求状态的错误提示问题

Vue全局loading及错误提示的思路与实现

vue - axios 请求统一增加请求头

到此这篇VUE-axios统一增加请求头并根据接口返回的状态码判断用户登录状态并跳转登录页的文章就介绍到这了,更多相关内容请继续浏览下面的相关推荐文章,希望大家都能在编程的领域有一番成就!

版权声明


相关文章:

  • VUE根据token,路由判断用户登录状态并跳转登录页2024-11-30 23:54:05
  • vue路由切换报错message: "Navigating to current location (XXX) is not allowed"的解决方案2024-11-30 23:54:05
  • VUE报错because it violates the following Content Security Policy directive2024-11-30 23:54:05
  • VUE实现延时请求接口2024-11-30 23:54:05
  • VUE控制台报错: [vue-router] Duplicate named routes definition: { name: "NotFound", path: "*" }2024-11-30 23:54:05
  • VUE项目启动后特定接口只调用一次2024-11-30 23:54:05
  • vue 判断页面是首次进入还是再次刷新2024-11-30 23:54:05
  • Vue-Axios用delete请求传formData2024-11-30 23:54:05
  • vue递归组件实现多级列表2024-11-30 23:54:05
  • JS阻止鼠标的默认点击事件(例如鼠标的点击右键)2024-11-30 23:54:05
  • 全屏图片