gpt4 book ai didi

javascript - 在 axios 超时后得到通知

转载 作者:数据小太阳 更新时间:2023-10-29 06:04:36 26 4
gpt4 key购买 nike

我有一个使用 axios 的 API 调用。超时设置为 2500 毫秒。我想要的是 axios 在超时后返回一个值,这样我就可以通知用户请求由于某些服务器或网络错误而中止。

我是如何初始化超时的

const instance = axios.create();
instance.defaults.timeout = 2500;

下面是超时后应该返回值的函数

_post(url, body, token) {
return new Promise((resolve, reject) => {
instance
.post(url, body, {headers: {
'Accept': 'application/json',
'Content-Type': 'application/json'
}})
.then(data => {
resolve(data);
})
.catch(error => {
reject(error);
});
});
}

谢谢!

最佳答案

Axios 错误由 code property 标识.

ECONNABORTED code在超时的情况下。

上面的代码使用了 promise 构造反模式。已经有一个 promise,不需要创建一个新的:

_post(url, body, token) {
return instance
.post(url, body, {headers: {
'Accept': 'application/json',
'Content-Type': 'application/json'
}})
.catch(error => {
if (error.code === 'ECONNABORTED')
return 'timeout';
else
throw error;
});
}

关于javascript - 在 axios 超时后得到通知,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/50619928/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com