vue接口错误拦截

vue接口错误拦截

  • 统一报错
  • 未登录统一拦截
  • 返回值统一处理

接口规范要跟后台定好,正确码,报错码等。。。

//例如你跟后台定的是这样:
{
	data:[],  //数据
	status:0,  // 状态吗
	msg:'',    //报错
}

//根据前端的跨域方式做调整
axios.defaults.baseURL = '',
//定义一个超时  8s
axios.defaults.timeout = 8000
// 拦截器
// request 请求值
// response 返回值   所有接口返回都会经过这个
//接口错误拦截
axios.interceptors.response.use((response)=>{
	//response.data才是接口的值	
	let res = response.data
	if(res.status == 0){
		//正确返回参数
		return res.data
	}else if(res.status == "错误的状态码"){
		//这是返回指定参数需要做的操作,跳转到指定的页面,一般都是哈希路由,一定要把路径写全,
		window.location.href = "/#/login"
	}else{
		//这就是错误了,可以换成自己用的ui组件报错提醒
		alert(res.msg)
	}
})

结合上一篇:前端跨域解决方案
下一篇:接口环境设置

你可能感兴趣的:(axios,vue)