@tanzerfe/http
v1.0.1
Published
A request lib
Downloads
59
Readme
开箱即用的请求库 @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: {...},
// },
// });
})();