基于axios的二次封装

// 对axios进行二次封装
import axios from "axios";

// 1:利用axios对象的方法create,去创建一个axios实例
// 2.request就是axios,需要稍微配置一下
const requests = axios.create({
    
    
  // 配置对象
  baseURL: "/api", // 基础路径,发请求的时候,路径当中会出现api
  timeout: 5000, // 请求超时时间
});

// 请求拦截器: 在发请求之前,请求拦截器可以检测到,可以在请求发出去之前做一些操作
requests.interceptors.request.use((config) => {
    
    
  // config: 配置对象,重要属性:header请求头
  return config;
});

// 响应拦截器
requests.interceptors.response.use(
  (res) => {
    
    
    // 成功的回调函数:服务器响应数据回来以后,响应拦截器可以检测到,可以做一些操作
    return res.data;
  },
  (error) => {
    
    
    // 相应失败的回调函数
    return Promise.reject(error.response || new Error("faild"));
  }
);

// 对外暴露
export default requests;

猜你喜欢

转载自blog.csdn.net/qq_40896145/article/details/129534248