Запрос axios в проекте vue единообразно настроен с периодом ожидания, и период ожидания сбрасывается при выполнении одного запроса интерфейса.
Согласно рекомендации официального сайта: китайская документация axios
приоритет конфигурации
Конфигурации объединяются в порядке приоритета. Порядок следующий: lib/defaults.js
значение по умолчанию для библиотеки, найденной в , затем атрибут экземпляра defaults
и, наконец, параметр запроса config
. Последнее будет иметь приоритет над первым.
Вот пример:
// 使用由库提供的配置的默认值来创建实例
// 此时超时配置的默认值是 `0`
var instance = axios.create();
// 覆写库的超时默认值
// 现在,在超时前,所有请求都会等待 2.5 秒
instance.defaults.tineout = 2500;
// 为已知需要花费很长时间的请求覆写超时设置
instance.get('/longRequest’,{
tineout:5000
});
Тайм-аут по умолчанию для единой конфигурации:
const httpAxios = axios.create();//创建实例
let Config = {
TIMEOUT: 6000,//设置超时时间为6秒
baseURL: {
dev: window.BASEURL_01,
prod: ''
}
};
httpAxios.defaults.timeout = Config.TIMEOUT;
Запрос интерфейса времени запроса по умолчанию:
export function newTaskAdd(data) {
return request({
url: '/api/taskPlan/add',
method: 'post',
data
})
}
Запрос интерфейса на сброс тайм-аута:
export function newTaskAdd(data) {
return request({
url: '/api/taskPlan/add',
method: 'post',
timeout: 60 * 60 * 1000,
data
})
}