vue---axios拦截器处理登录失效跳转登录页
axios拦截器(Interceptors)主要分为:
(1)请求拦截器:在发送请求前进行拦截,可以根据发送的请求参数做一些发送参数的调整,例如设置headers
(2)响应拦截器:在后台返回响应时进行拦截,可以根据状态码进入下一步处理。例如:登录失效跳转回登录页。
项目需求:根据后台返回的状态码,统一处理。例如:token失效,回到登录页面;返回错误,给出统一的错误提示。
完整代码:
// 导入axios
import axios from "axios";
import { MessageBox } from "element-ui";
const querystring = require("querystring");
import ElementUI from "element-ui";// 设置基地址-使用自定义配置新建一个 axios 实例
// 注意:打包时baseURL要加上api,即baseURL: "/api"
const http = axios.create({baseURL: "/",headers: { accessToken: localStorage.getItem("token") }
});// 拦截响应response,并做一些错误处理
http.interceptors.response.use(response => {// 登录失效处理if (response.data.respCode == "00002") {MessageBox.alert(response.data.respDesc, "登录失效", {confirmButtonText: "跳转登录页面",callback: action => {// 跳转登录页window.location.href = "/";}});} else if (response.data.respCode != "00000") {if (response.data.respDesc != "") {ElementUI.Message({title: "错误",message: response.data.respDesc,type: "error"});}}return response;},error => {if (error.response.status == 401) {ElementUI.Message({title: "警告",message: error.response.data.respDesc,type: "warning"});}return Promise.reject(error);}
);export default http;
// ******一、登录******
// 登录请求
export const login = param => {return http.post("oauth/login/user", param, { headers: { accessToken: "" } });
};
// 退出登录
export const logout = () => {// 退出登录需要清除tokenreturn http.get("/oauth/logout", { headers: { accessToken: "" } });
};
参考文章:
GitHub Interceptors
vue.js项目中在axios响应拦截器中跳转登录页面
vue---axios拦截器处理登录失效跳转登录页相关推荐
- vue ajax拦截器,Vue-resource拦截器判断token失效跳转详解
本文主要为大家带来一篇Vue-resource拦截器判断token失效跳转的实例.小编觉得挺不错的,现在就分享给大家,也给大家做个参考.一起跟随小编过来看看吧,希望能帮助到大家. 在拦截器中设置全局的 ...
- Vue axios拦截器使用
axios 是一个基于Promise 用于浏览器和 nodejs 的 HTTP 客户端.这篇文章主要介绍了vue/axios请求拦截的相关知识,需要的朋友可以参考下 axios使用拦截器 在请求或响应 ...
- vue axios拦截器的封装
// request.js import axios from 'axios' import qs from 'qs'// 创建axios实例 const service = axios.create ...
- vue axios 拦截器配置与封装
一.安装 1. 利用npm安装npm install axios --save --save:安装在生产环境 二.例子 要想统一处理所有http请求和响应,就得用上 axios 的拦截器. axios ...
- angular4 使用HttpClient拦截器 检查token失效,返回登录页面
1.首先创建一个拦截器服务:InterceptorService.ts 2.在app.module.ts文件里引入拦截器 import {InterceptorService} from './Int ...
- axios 拦截器不生效填坑
Vue axios拦截器不生效填坑: 1.let instance = axios.create();//此处创建拦截器,拦截器处理过程省略 2.Vue.prototype.$http = insta ...
- vue路由守卫,axios拦截器,权限树
K15项目案例-后台 1.分页问题 关于分页表格列中的序号问题: <el-table-column type="selection" label="序号" ...
- Vue学习笔记:axios 拦截器的用法
Vue学习笔记:axios 拦截器的用法 什么是axios 拦截器? 拦截器就是拦截每一次的请求和响应,然后进行相应的处理.请求拦截器,它可以统一在你发送请求前在请求体里加上token:响应拦截器,是 ...
- Vue中的axios拦截器
axios中的拦截 1.1 介绍: 拦截器包括请求拦截器与相应拦截器,可以在请求发送前或者相应后进行拦截处理.在axios对象上有一个interceptors属性,该属性又有request和respo ...
最新文章
- 线性表的表示和实现方式之链式表示和实现
- Altium Designer 的使用笔记
- 一步一步学Silverlight 2系列(22):在Silverlight中如何用JavaScript调用.NET代码
- NDK建立多个共享库
- github创建一个新的tag
- [Lua]Lua入门教程
- 批量将点shp转成线shp
- 如何下载全国行政边界线(国界、省界、县界、乡镇界)
- VMware ESXi定制版(OEM ISO)资源下载(包含5.1\5.5\6.0)
- 2020年ESA中国区10m地表覆盖数据的镶嵌、裁剪与分省数据分享
- 你想要的宏基因组-微生物组知识全在这(2022.10)
- 英国高端SPA级奢养护肤品牌EVE LOM相继入驻成都IFS、北京连卡佛;FILA斐乐携手梵高博物馆推出全新联名系列 | 知消...
- 《NVM-Express-1_4-2019.06.10-Ratified》学习笔记(8)
- c语言实现学生档案管理系统
- 关于人像后期处理基础的相关技术步骤
- Android 动态修改app名称(市场和手机中显示两个不同的名称)
- 985大学计算机专业起薪,985名校毕业生有多值钱?看完这份大学毕业生薪酬榜你就知道了...
- 分子动力学开源分析软件MDAnalysis安装介绍及使用
- 关于维基百科你不知道的十件事:
- Chrome网页翻译失效的解决方案
热门文章
- 什么运动耳机佩戴舒适性好、盘点六款佩戴舒适的运动蓝牙耳机
- Mac删除Apowersoft_Audio Device和Apowersoft Audio Device
- 《炬丰科技-半导体工艺》 PVA 刷擦洗
- 都是韭菜,不配做后浪
- Java99乘法表格
- 5阶无向完全图_设9阶无向图的每个顶点的度数为5或6,至少有几个5度顶点,求过程及解释,要详细...
- JSP+ssm计算机毕业设计地方特色风味小吃的推荐系统3fs3p【源码、数据库、LW、部署】
- 每日一句---- Day7
- 剑网三服务器缺少必要启动文件,win7系统玩剑网三游戏经常掉线的解决方法
- 中国现代农业产业园区发展动态及未来战略规划分析报告2022年版