跳到主要内容
版本:v3

alova详解

alova 实例不但可以创建不同类型的 method 实例,还可以设置全局参数,创建的 method 实例都会继承这个 alova 实例的参数。当 alova 实例的参数与 method 实例设置了相同的参数时,例如 timeoutshareRequest等,将优先使用 method 实例的参数。

接下来我们看下 alova 的全局参数。

baseURL

设置 baseURL 后,你可以不再需要为每个请求都添加相同的 url 前缀。

const alovaInstance = createAlova({
baseURL: 'https://api.alovajs.dev'
// ...
});

此时,创建 method 实例时只需要指定 pathname 即可。

alovaInstance.Get('/todo/list');

全局的超时时间

以下为设置全局的请求超时时间。

// 全局设置请求超时时间
const alovaInstance = createAlova({
// ...
// 请求超时时间,单位为毫秒,默认为0,表示永不超时
timeout: 50000
});

全局的共享请求

在全局设置共享请求。

const alovaInstance = createAlova({
// ...
shareRequest: false
});

请求适配器

在之前的章节中我们已经配置了alova/fetch请求适配器,由这个 alova 实例发起的请求都将使用它发送请求。实际上,我们针对不同的 JS 环境,还提供了各种请求适配器。

全局的响应缓存

你还可以全局设置响应缓存:

const alovaInstance = createAlova({
// ...
cacheFor: {
GET: 0, // 关闭所有GET缓存
POST: 60 * 60 * 1000 // 设置所有POST缓存1小时
}
});

详细内容可参考响应缓存