FastAxios 容器
createFastAxios(options?, newInstance?) 创建
创建或更新 FastAxios 配置容器。
ts
const fastAxios = createFastAxios({
baseUrl: "https://api.example.com",
timeout: 30_000,
headers: { Authorization: "Bearer <token>" },
requestCipher: false,
});| 参数 | 类型 | 默认值 | 说明 |
|---|---|---|---|
options.baseUrl | string | "" | 创建 Axios 请求实例时使用的 baseURL。 |
options.timeout | number | 60000 | 请求超时,单位毫秒。 |
options.headers | Record<string, AxiosHeaderValue> | {} | 跨请求共享的公共请求头;重复设置时按字段合并。 |
options.requestCipher | boolean | true | 单次请求未覆盖时使用的加解密开关。 |
newInstance | boolean | false | 为 true 时返回独立容器,不写入全局单例。 |
axiosUtil.request() 始终读取全局单例。独立容器不会自动参与请求流程。
重复调用单例模式的 createFastAxios() 会保留现有处理器,并通过 setOptions() 合并本次基础配置。
useFastAxios() 实例
返回已经初始化的全局容器。尚未调用 createFastAxios() 时抛出 Error。
setOptions(options?) 配置
更新基础配置并返回当前容器;链式调用时 TypeScript 会保留容器的具体子类型。headers 按字段合并;其他显式传入的值直接覆盖。空字符串、0 和 false 都是有效值。
addErrorCode() 错误码
添加或覆盖错误提示:
ts
fastAxios.addErrorCode(40101, "登录状态已失效");
fastAxios.addErrorCode({
40102: "账号已停用",
CUSTOM_ERROR: "自定义错误",
});支持 HTTP 状态码、Axios error code 和 Fast 业务 code。单值重载缺少 message 时抛出 TypeError。
createFastAxios 创建
创建或更新全局 FastAxios 容器,也可以返回不写入单例的独立容器。
签名
ts
createFastAxios(options?: InitializeOptions, newInstance?: boolean): FastAxios;示例
ts
import { createFastAxios } from "@fast-china/axios";
const result = createFastAxios({ baseUrl: "/api", timeout: 30_000, requestCipher: false });输入
| 输入值 | 输入值类型 | 必填/默认值 | 输入值说明 |
|---|---|---|---|
options | InitializeOptions | 否 | 基础地址、超时、公共请求头和全局加解密开关。 |
newInstance | boolean | 否,默认 false | 为 true 时创建不影响全局单例的独立容器。 |
返回
| 返回值 | 返回值类型 | 返回值说明 |
|---|---|---|
result | FastAxios | 全局单例或新建的独立配置容器。 |
useFastAxios 实例
取得已经初始化的 FastAxios 全局单例。
签名
ts
useFastAxios(): FastAxios;示例
ts
import { createFastAxios, useFastAxios } from "@fast-china/axios";
createFastAxios({ baseUrl: "/api" });
const result = useFastAxios();输入
该方法没有输入参数。
返回
| 返回值 | 返回值类型 | 返回值说明 |
|---|---|---|
result | FastAxios | 已初始化的全局容器;尚未初始化时抛出 Error。 |
fastAxios.setOptions 配置
合并基础配置;Headers 按字段合并,其他显式值直接覆盖。
签名
ts
setOptions(options?: InitializeOptions): this;示例
ts
import { createFastAxios } from "@fast-china/axios";
const fastAxios = createFastAxios({ baseUrl: "/api" }, true);
const result = fastAxios.setOptions({ timeout: 15_000, headers: { Authorization: "Bearer token" } });输入
| 输入值 | 输入值类型 | 必填/默认值 | 输入值说明 |
|---|---|---|---|
options | InitializeOptions | 否,默认 {} | 需要更新的基础配置。 |
返回
| 返回值 | 返回值类型 | 返回值说明 |
|---|---|---|
result | this | 当前容器,支持链式调用。 |
fastAxios.addErrorCode 错误码
添加或覆盖单个错误提示;也支持一次传入错误码映射。
签名
ts
addErrorCode(key: string | number, message: string): FastAxios;
addErrorCode(codes: Record<string | number, string>): FastAxios;示例
ts
import { createFastAxios } from "@fast-china/axios";
const fastAxios = createFastAxios({ baseUrl: "/api" }, true);
fastAxios.addErrorCode(40101, "登录状态已失效");
const result = fastAxios.addErrorCode({ 40102: "账号已停用", CUSTOM_ERROR: "自定义错误" });输入
| 输入值 | 输入值类型 | 必填/默认值 | 输入值说明 |
|---|---|---|---|
key | string | number | 单值重载必填 | HTTP、Axios 或 Fast 业务错误码。 |
message | string | 单值重载必填 | 展示给用户的提示。 |
codes | Record<string | number, string> | 映射重载必填 | 批量错误码与提示映射。 |
返回
| 返回值 | 返回值类型 | 返回值说明 |
|---|---|---|
result | FastAxios | 当前容器,支持链式调用。 |
