react axios 配置

Posted Wowo丶

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了react axios 配置相关的知识,希望对你有一定的参考价值。

1:package.json 添加
       "proxy": "代理地址"
2  封装axios
    创建server.js  添加
import axios from "axios";
import qs from "qs";
import axios from "axios";
import qs from "qs";

//终止axios的fun
let axiosToken = null;
//请求超时时间
//axios.defaults.timeout = 10000;
// axios拦截器
axios.interceptors.request.use(
config => {
// 在发送请求之前做些什么
return config;
},
err => {
return Promise.reject(err);
}
);
axios.interceptors.response.use(
response => {
//请求完成token置空
axiosToken = null;
return response;
},
error => {
//请求完成token置空
axiosToken = null;
//提示信息
if (axios.isCancel(error)) alert(error.message, "center");
else alert("请稍后再试...", "center");
return Promise.reject(error.response.data); // 返回接口返回的错误信息
}
);

class HttpRequest {
get(httpUrl, paramsData, successFun, errorFun) {
axios
.get(httpUrl, paramsData)
.then(function(res) {
successFun(res);
})
.catch(function(err) {
console.log("请求失败! " + err);
});
}
// post请求
post(httpUrl, paramsData, successFun, errorFun) {
let paramsDatas = paramsData;
//转为json
paramsDatas = qs.stringify(paramsDatas);
axios
.post(httpUrl, paramsDatas, {
//终止请求
cancelToken: new axios.CancelToken(function executor(c) {
axiosToken = c;
})
})
.then(res => {
successFun(res);
})
.catch(err => {
console.log(err);
});
}
//终止请求
doCancelToken(msg = "取消") {
if (axiosToken) axiosToken(msg);
}
}
export default new HttpRequest();

 
3 引入使用 就可以了 
      

  




以上是关于react axios 配置的主要内容,如果未能解决你的问题,请参考以下文章

VSCode自定义代码片段14——Vue的axios网络请求封装

react axios 配置

有没有办法为错误响应代码设置全局 axios 配置

回归 | js实用代码片段的封装与总结(持续更新中...)

react 使用axios

create-react-app创建react项目,使用axios跨域