javascript - Nodejs - 在生产中的错误回调上重试相同的函数
问题描述
我有一个带有 setTimeOut 的 javascript 函数,如果 API 调用有任何错误,我正在重试调用相同的函数。我在 catch 块中调用相同的函数。我的节点服务器是否会崩溃并且资源将被阻塞,或者它将继续调用 getData () 功能
let retry = ()=> {
setTimeout(() => {
getData()
retry()
}, 3000);
}
let getData = () =>{
Someapi.getData().then((token) => {
console.log(`Data after 3 seconds->${token}`)
}).catch((err) => {
getData()
})
}
解决方案
我不知道这是否有效。
let retry = () => {
setTimeout(() => {
getData();
retry();
}, 3000);
};
while (true) {
let getData = () => {
Someapi.getData()
.then(token => {
console.log(`Data after 3 seconds->${token}`);
return false;
})
.catch(err => {
return true;
});
};
}
推荐阅读
- r - 急于解决 R plm 包中的“不允许重复的 'row.names'”:没有重复
- azure - ModuleNotFoundError:没有名为“azure.storage”的模块。天蓝色函数
- reactjs - 为什么当父级改变时 React 会重新渲染子级?
- c++ - 如何访问数组中对象的数据成员
- angular - Angular11:组件如何获知传递给路由的状态变化?
- c++ - TCP Echo Server 使用线程命令行未显示
- c++ - 如何使用ffmpeg在内存缓冲区中写入帧而不是文件?
- linux - 我的查找排除路径命令有什么问题?
- python - 关于 if 语句 if not 后面指定的问题?
- android - (android) 如何填充芯片的区域?