基于 Alova 的现代化请求库,提供统一的请求和响应处理机制,支持多种适配器和灵活的配置选项。
创建一个标准的 Alova 请求实例。
option: requestOption - 配置选项| 参数 | 类型 | 默认值 | 说明 |
|---|---|---|---|
baseUrl |
string |
'/' |
基础 URL |
timeout |
number |
0 |
超时时间(毫秒),0 表示无超时 |
commonHeaders |
Record<string, string | (() => string)> |
{} |
公共请求头,支持函数动态获取 |
statusMap |
statusMap |
{success: 200, unAuthorized: 401} |
HTTP 状态码映射 |
codeMap |
codeMap |
{success: [200], unAuthorized: [401]} |
业务状态码映射 |
responseDataKey |
string |
'data' |
响应数据字段名 |
responseMessageKey |
string |
'message' |
响应消息字段名 |
isTransformResponse |
boolean |
true |
是否启用响应转换 |
isShowSuccessMessage |
boolean |
false |
是否显示成功消息 |
successDefaultMessage |
string |
'操作成功' |
默认成功消息 |
isShowErrorMessage |
boolean |
true |
是否显示错误消息 |
errorDefaultMessage |
string |
'服务异常' |
默认错误消息 |
successMessageFunc |
(message: string) => void |
undefined |
成功消息处理函数 |
errorMessageFunc |
(message: string) => void |
undefined |
错误消息处理函数 |
unAuthorizedResponseFunc |
() => void |
undefined |
未授权处理函数 |
requestAdapter |
AlovaRequestAdapter |
adapterFetch() |
请求适配器 |
statesHook |
StatesHook |
undefined |
状态钩子(用于框架集成) |
返回配置好的 Alova 实例,支持以下 HTTP 方法:
Get(url, config?)Post(url, config?)Put(url, config?)Delete(url, config?)Patch(url, config?)Head(url, config?)Options(url, config?)创建支持双重调用模式的请求实例工厂。
baseConfig: baseRequestOption<AlovaGenerics> - 基础配置返回一个函数,该函数:
CustomConfig 时返回合并配置后的新实例如果你之前使用原生 Axios,可以这样迁移:
@bubblesjs/request 提供了灵活的适配器系统,可以轻松集成现有的请求解决方案。
A: 可以通过设置 isTransformResponse: false 来获取完整响应:
A: 可以结合 Alova 的重试功能:
A: Alova 内置了强大的缓存功能:
A: 使用 Alova 的状态钩子功能:
@bubblesjs/request 提供了现代化、类型安全、功能丰富的请求解决方案。通过灵活的配置选项和双重调用模式,可以满足从简单到复杂的各种请求场景需求。