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);

相关内容

热门资讯

透视模块!wepoker国外版... 透视模块!wepoker国外版透视(AApoker万能)切实真的是有辅助插件(哔哩哔哩)1)wepo...
透视资料!德州来玩辅助器(We... 透视资料!德州来玩辅助器(WePoKer软件)果然真的有辅助攻略(哔哩哔哩)一、德州来玩辅助器可以开...
透视阶段!竞技联盟破解版最新版... 透视阶段!竞技联盟破解版最新版(HHpoker软件)竟然真的有辅助攻略(哔哩哔哩)一、竞技联盟破解版...
透视攻略!werplan外开挂... 透视攻略!werplan外开挂(WePoKer内容)本来存在有辅助方法(哔哩哔哩)1、werplan...
透视项目!wepoker透视破... 透视项目!wepoker透视破解版(HHpoker内部)切实真的是有辅助教程(哔哩哔哩)1)wepo...
透视操作!wepoker有用吗... 透视操作!wepoker有用吗(WePoKer内容)总是是有辅助app(哔哩哔哩)1、wepoker...
透视项目!哈糖大菠萝怎么挂(W... 透视项目!哈糖大菠萝怎么挂(WPK软件)一直是真的有辅助方法(哔哩哔哩)1、玩家可以在哈糖大菠萝怎么...
透视要领!哈糖大菠萝助手(We... 您好,哈糖大菠萝助手这款游戏可以开挂的,确实是有挂的,需要了解加去威信【136704302】很多玩家...
透视步骤!德州私人局怎么透视(... 透视步骤!德州私人局怎么透视(WePoKer app)确实有辅助方法(哔哩哔哩)1、每一步都需要思考...
透视总结!wepoker免费脚... 透视总结!wepoker免费脚本咨询(WePoKer代打)一贯存在有辅助工具(哔哩哔哩)1、wepo...