ez-axios

更新时间:2025-7-16

基于axios的二次封装,灵活配置、开包即用!!

安装

npm i ez-axios

快速使用

import { get, post, put, del } from 'ez-axios';

// 直接使用
get('/url').then(res => {
  cosnole.log(res);
});

// api集成引用
const api = {
  login: (par: any): Promise<any> => post('/url', par)
}
api.login({name: 'test'}).then(res => {
  console.log(res);
});

全局配置

通过自定义配置,统一处理全局规则,如:请求头、请求超时时间等。全局配置需要写在使用请求之前,且请求配置项会覆盖全局配置。如果你是 VUE 项目,可以在 main.js 中引入。

// main.js
import ezAxios from 'ez-axios';

ezAxios({
  baseURL: '', // 基础地址
  mark: '', // 标记
  timeout: 30000, // 请求超时时间
  briefly: true, // 简要数据结构
  loading: true, // 是否显示加载动画
  headers: {}, // 请求头
  error: status => {} // 错误处理
});

// 全局配置项均为非必填,以上值为内置默认值。

请求方法参数说明

ez-axios 在封装了 getpostputdel 四种常用的请求方法,可以根据需求选择使用。如果你苦恼于看文档,可以尝试在引用时,配合注释提示,快速了解每一个参数的含义。

  • 前两个参数只能是请求地址请求参数(参数值仅支持:ObjectArrayFile)。

  • 可以指定请求参数类型返回值类型

    • 请求参数类型(requestType)可用值(get 请求无法指定):jsonqueryform-data/formdata/datafile

    • 返回值类型(responseType)可用值:blob(多用于文件、下载),若不指定,则默认返回。

    • requestTyperesponseType:可同时指定,如:post('/url',{name: 'test'},'query','blob')

  • 可单独设置请求头请求超时时间简要数据结构是否显示加载动画错误处理,会覆盖全局配置。

    get(
      '/url',
      { name: 'test' },
      {
        loading: false, // 不显示显示加载动画
        headers: {
          // 请求头
          token: 'k7r+vB0fj+dqxcRF3hZ2cQ=='
        }
      }
    );
    
  • 配置mark后,请求Url若以mark开头,则标记会被删除

    ezAxios({
      mark: 'api' // 标记
    });
    
    get('/api/url'); // 发起请求时,/api 会被删除,请求地址会变为:/url
    

    此配置多用于处理代理标记,可根据当前环境信息,设置不同的标记

    // 例1:
    ezAxios({
      mark: process.env.NODE_ENV === 'production' ? 'api' : ''
    });
    
    // 例2:
    ezAxios({
      mark: import.meta.env.MODE === 'production' ? ['api', 'test', 'mock'] : ''
    });
    
  • 从第三个参数开始,后面的参数均为可选参数不限制顺序不区分大小写

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

相关阅读更多精彩内容

友情链接更多精彩内容