首页 > 如何不断的请求同一个API?

如何不断的请求同一个API?

我现在有个进度条需要API返回的数据,每个请求建立在上个请求完成之后,这个请求的JS该如何写?


你可以用递归的方法来获取就可以了:下面是用ajax来做的实例

function getData(){
    $.get('a.html?a=33',function(ret){
        if(ret){   //这里的ret可以对ret返回数据的内容做出判断,只要某个条件符合,就终止继续请求
            getData();    //返回数据后再次获取
        }else{
            alert('响应超时');
        }
    })
}

另外一个就是可以用轮询操作了


写个递归不停调用?进度完成后再停止?感觉是这样吧


好久没有写过jquery ajax,不知道写对了没

function progress(maxTry) {
    var tryTimes = 0;
  
    function fetchData() {
    $.ajax({
      method: "GET",
      url: "some/api/request",
      data: { some: 'api data'},
      complete: function(response) {
         if(response.data)    // if you are satisfied with response, stop looping API
             return;
         else {
            updateProgressBar();
            fetchData();
         }   
      },
      error: function() {
        if(tryTimes > maxTry) {
          // anything else you want to do when failed
          return;
        } else {
            fetchData();
          tryTimes ++;
        }
      }
    })
  }
  
  fetchData();
}

progress(5);



  
  
【热门文章】
【热门文章】