axios全局拦截响应

在系统开发过程中,若遇到长时间未操作,则需要将页面跳转到登录页面。因为现在都是前后端分离的开发模式,路由跳转都交给前端,而后端只返回一个报错信息,例如"errorMsg":"请登录",而前端需要做的事就是判断每一个接口的返回信息中的errorMsg是不是等于“请登录”,如果是,则跳转到登录页面。但想要达到此效果,总不可能需要对每一个接口的返回信息都进行判断,这样做太麻烦。这个时候就需要用到axios的全局配置了(我前端用的是vue框架,接口请求用的是axios)。

axios.interceptors.response.use(function (response) {  
    // 用户信息是否超时,重定向到登录页面  
    if (response.data.errorMsg== '请登录'){  
        localStorage.clear()  
        router.replace({  
                        path: '/login',  
                        query: {redirect: router.currentRoute.fullPath}  
                    })  
    }  
    return response  
}, function (error) {  
    // Do something with response error  
    return Promise.reject(error)  
})

  

转载于:https://www.cnblogs.com/luyuefeng/p/9072663.html

你可能感兴趣的:(axios全局拦截响应)