vue前端拦截器

axios.defaults.baseURL = "http://127.0.0.1:8088";
//将 axios 挂载到 vue 全局对象中,使用 this 可以直接访问


//axios 请求拦截 每次向后端发送
axios.interceptors.request.use(config => {
	//为请求头对象,添加 Token 验证的 token 字段
	config.headers.adminToken = window.sessionStorage.getItem('adminToken');
	config.headers.userToken = window.localStorage.getItem('userToken');
	return config;
})
axios.interceptors.response.use((resp) => { //正常响应拦截
	if (resp.data.code == 500) {
		ElementUI.Message({
			message: resp.data.message,
			type: "error"
		})
	}
	if (resp.data.code == 402) {
		ElementUI.Message({
			message: resp.data.message,
			type: "error"
		})
		router.replace("/login");
	}
	if (resp.data.code == 403) {
		ElementUI.Message({
			message: resp.data.message,
			type: "error"
		})
		router.replace("/userLogin");
	}
	return resp;
});

注:sessionStorage和localStorage的区别,localStorage可长期保存token,即使跳转新页面也依旧存在于浏览器

你可能感兴趣的:(前端,每日总结,Javascript,vue.js,前端,javascript)