// 对axios进行二次封装
import axios from "axios";
// 引入进度条
import nprogress from "nprogress";
// 引入进度条样式
import "nprogress/nprogress.css";
console.log(nprogress);
// 利用axios对象方法create,去创造一个axios实例
const requests = axios.create({
// 配置对象
// 发请求的路径上都带/api
// http://xxx.xxx/8080/api
baseURL: "/api",
// 请求超时时间
timeout: 5000,
});
requests.interceptors.request.use((config) => {
// 进度条开始
nprogress.start();
// config 配置对象 ,对象里面有很重要的属性 ,header请求头
return config;
});
// 响应拦截器
requests.interceptors.request.use(
(res) => {
// 进度条结束
nprogress.done();
return res.data;
},
(err) => {
return Promise.reject(new Error("false"));
}
);
// 对外暴露
export default axios;