Jquery Ajax - получить вызов API с динамической пагинацией - PullRequest
0 голосов
/ 07 ноября 2018

Я звоню GET, используя Ajax, он работает хорошо и имеет ожидаемый результат. Но API, который я использую, имеет ограничение в 50 и использует нумерацию страниц. Что я хочу сделать, так это получить все данные до того, как я вызову myFunction(data), чтобы я мог отправить эту функцию всем, в настоящее время я получаю только первые 50 объектов.

$.ajax({
  url: "test.html",
  method: 'GET',
  cache: false,
  success: function(data){
    myFunction(data);
  }
});

Легко проверить, есть ли у GET следующая страница, так как она возвращает URL следующей страницы, в противном случае она пуста.

1 Ответ

0 голосов
/ 07 ноября 2018

Вам нужно создать рекурсивную функцию, и вы можете попробовать это с помощью вызова ajax async: false.

 var totalPagesLength = 5;
    var pagescount=0;
            function recursively_ajax() {
                $.ajax({
                    url: "test.html",
                    method: 'GET',
                    async:false,
                    cache: false,
                    success: function (data) {
                        pagescount++;
                        if (pagescount < totalPagesLength) {
                            recursively_ajax();
                        }
                    }
                });
            }
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...