1.0.1 • Published 1 year ago
@tanzerfe/http v1.0.1
开箱即用的请求库 @tanzerfe/http
一个用于处理 HTTP 请求和协议的库,提供了丰富的配置选项和拦截器机制,方便开发者进行网络请求管理。
模块导出
$Config
- 类型: Config
- 描述: 请求库的配置类,包含了请求成功的 code 值、token 获取方法、toast 实例及其默认主题、请求错误处理函数和响应处理函数。
- 详细信息: 请参见 请求库配置 。
$http
- 类型: AxiosInstance
- 描述: 带有拦截器的 Axios 实例,用于发送 HTTP 请求。
- 使用说明: 请参见 使用示例。
$httpNano
- 类型: AxiosInstance
- 描述: 不带拦截器的 Axios 实例,用于发送直连 HTTP 请求。
$protocol
- 类型: any
- 描述: 协议相关的工具或配置。
- 使用说明: 该导出的具体使用方法根据项目中的 protocol实现而定。
请求库配置
import {$Config} from "./index";
// $Config.getCustomHeaders = { zh_id: '' };
$Config.getToken = () => {
  return auth.userInfo?.token;
};
$Config.$toastLight = useToastCtx({theme: 'light'});
$Config.$toastDark = useToastCtx({theme: 'dark'});
// ...Config类用于配置请求库的各种参数和处理函数。
属性
success_codes
- 类型: (string | number)[]
- 默认值: ['success', '200', '201', '202', 200]
- 描述: 定义正常响应的 code 值。
getCustomHeaders
- 类型: Record<string, any> | (() => Record<string, any>)
- 默认值: undefined
- 描述: 获取 header 的对象或函数。
- 版本:v1.0.1+
getToken
- 类型: () => string | undefined
- 默认值: () => void 0
- 描述: 获取 token 的函数。
defaultToastTheme
- 类型: 'light' | 'dark'
- 默认值: 'dark'
- 描述: 默认的 toast 主题。
$toastLight
- 类型: IToast
- 描述: light 主题的 toast 实例。
$toastDark
- 类型: IToast
- 描述: dark 主题的 toast 实例。
方法
requestErrorHandler
- 类型: (error: any, reqData: any) => void
- 描述: 请求错误处理函数。
responseHandler
- 类型: (resData: any, reqData: any) => void
- 描述: 响应处理函数。
_cfg
- 类型 Object
- 描述:参数附加配置- noAuth 为true则不传token
- showTip 错误提示
- showOkTip 成功提示
- okTipContent 成功提示文案
- theme toast皮肤 'dark'、'light'
 
使用示例
import { $http, $Config } from '@tanzerfe/http';
(function getData() {
  const url = 'https://httpbin.org/post';
  const params = { t1: 'test' };
  $http.post(url, {
    data: {
      ...params,
      // 单个请求配置成功提示、错误提示、皮肤
      _cfg: {
        showTip: true,
        showOkTip: true,
        theme: 'dark', // 'dark' or 'light'
      },
    },
  });
  // $http.get(url, {
  //   data: {
  //     _cfg: {...},
  //   },
  // });
})();