axios要求、和返回数据阻拦,一致要求报错提醒
官方文档
https://github.com/axios/axios 英文文档
https://www.kancloud.cn/yunye… 中文文档
要乞降返回阻拦,增加一致的报错信息
要求的设置能够经由过程浏览官方文档来举行设置。axios api也很简介,多看看再本身尝试一下就会了
下面是我写的一个在react中的运用,UI用的阿里的Antd 框架,所以报错信息直接用全局弹窗来提醒了。比较大略。
写好以后,在写发送要求的文件中援用request 就能够了。
import axios from "axios";
import { message } from "antd";
import NProgress from "nprogress";
import "nprogress/nprogress.css";
import qs from "qs";
// 阻拦一切有要求与复兴
// Add a request interceptor
axios.interceptors.request.use(
config => {
NProgress.start();
if (config.method != "get") {
config.data = qs.stringify(config.data);
}
// withCredentials=true
config.headers["Content-Type"] = "application/x-www-form-urlencoded";
return config;
},
error => {
message.error("要求毛病,请重试");
return Promise.reject(error);
}
);
// Add a response interceptor
axios.interceptors.response.use(
response => {
NProgress.done();
if (response.data.RetCode === 101) {
message.error(response.data.Message);
return response;
}
if (response.data.RetCode === 100) {
message.error(response.data.Message);
return response;
}
return response;
},
error => {
message.error("要求毛病,请重试");
NProgress.done();
return Promise.reject(error);
}
);
export default axios;