asynchawaitping()functionsetInterval().Howtomakeitsmart?
创始人
2024-09-21 03:30:44
0

一个可能的方法是结合Promise和setTimeout来实现一个具有自动重试功能的ping函数。具体步骤如下:

  1. 创建一个promise实例,它将在ping成功时resolve,失败时reject。
  2. 通过setTimeout实现一个延迟retryDelay的超时函数。
  3. 使用async和await来等待ping结果,并捕获任何可能的错误。
  4. 如果ping成功,则用resolve函数解析promise实例。否则,在retryDelay时间后再次尝试ping。
  5. 使用setInterval设置定时器,在一段时间后调用上述ping函数。

以下是代码示例:

function ping() {
  return new Promise(async (resolve, reject) => {
    const url = 'https://example.com';
    const options = {timeout: 5000};
    const retryDelay = 10000;
    let success = false;

    while (!success) {
      try {
        await fetch(url, options);
        success = true;
        resolve();
      } catch (e) {
        setTimeout(() => {}, retryDelay);
      }
    }
  });
}

setInterval(() => {
  ping()
    .then(() => {
      console.log('Ping successful');
    })
    .catch(() => {
      console.log('Ping failed');
    });
}, 60000);

相关内容

热门资讯

透视专业!德普之星辅助软件(透... 透视专业!德普之星辅助软件(透视)hh poker辅助器先试用,教程经验(的确有挂)-哔哩哔哩1、h...
hhpoker脚本!fishp... hhpoker脚本!fishpoker透视底牌(透视)方法-切实解密存在有挂1、玩家可以在fishp...
透视开挂!wpk透视插件(透视... 透视开挂!wpk透视插件(透视)wepokerplus透视脚本免费,教程经验(有挂攻略)-哔哩哔哩1...
竞技联盟破解版最新版!德州透视... 竞技联盟破解版最新版!德州透视插件(透视)教程-真是关于是有挂1、超多福利:超高返利,海量正版游戏,...
透视推荐!hh poker软件... 透视推荐!hh poker软件(透视)wepokerplus开挂,教程教材(有挂助手)-哔哩哔哩1、...
epoker有透视吗!wepo... epoker有透视吗!wepoker怎么看牌型(透视)挂-其实分享是真的挂1、这是跨平台的wepok...
透视开挂!wepoker-h5... 透视开挂!wepoker-h5下载(透视)wpk私人局有透视吗,教程烘培(有挂方法)-哔哩哔哩1、w...
wepoker开辅助能查到吗!... wepoker开辅助能查到吗!wepoker有辅助工具吗(透视)方法-果然教你真的有挂wepoker...
透视总结!佛手大菠萝有挂吗(透... 透视总结!佛手大菠萝有挂吗(透视)wepoker挂,教程妙计(有挂细节)-哔哩哔哩1、佛手大菠萝有挂...
wpk模拟器多开!We pok... wpk模拟器多开!We poker辅助器下载(透视)工具-竟然有挂有挂wpk模拟器多开!We pok...