在系統開發過程中,若遇到長時間未操作,則需要將頁面跳轉到登錄頁面。因為現在都是前后端分離的開發模式,路由跳轉都交給前端,而后端只返回一個報錯信息,例如"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) })