打字稿超时承诺

时间:2020-04-08 21:13:45

标签: node.js typescript promise

我正在尝试在函数上设置超时,这意味着 我调用函数请求,一开始会创建一个最大超时,然后将调用主函数。如果此函数花费的时间太长,我想“重新运行”请求函数。

我的代码当前如下所示:

public async request(data: string): Promise<void> {
    try {  
      const timeout = setTimeout(() => {
        throw 'timeout!';
      }, TIMEOUT);
      await connectUrl(this);
      clear(timeout);
    } catch (e) {
      await this.request(data);
      //throw e;
    }
  }

现在的问题是,我无法捕获throw'n错误部分,因此等待this.request(data); 将不会重新运行。

也许可以给我任何帮助;)

0 个答案:

没有答案