Json - как получить более 100 объектов на страницу при использовании api выборки (vanilla js)

Я использую hotsapi.net

Вы можете запросить данные с разбивкой на страницы, где каждая страница содержит не более 100 объектов. Но я изо всех сил пытаюсь понять, как собрать все данные на одной странице. Или, если это невозможно, способ перебрать все страницы и собрать данные.

Я знаком с простой выборкой API, но никогда не имел дела со страницами. Особенно, когда мне нужно отфильтровать от 100 до 150 страниц данных. Я посмотрел в сети, и это помогло мне прийти к тому, что показано ниже.

Пока у меня есть это

function fetchMetaData(){
let i;
let apiData = [];
for (i = 20; i>0; i--) {
    apiData.push(fetch('apiurlwithpage?= i'));
}
Promise.all(apiData)
    .then(responses => {
        let processedResponses = [];
        responses.map(response => {
            processedResponses.push(response);
        })
    })
}

В конце концов, processingResponses дает мне множество ответов. Я даже не уверен, что мне это нужно. Вы можете увидеть это здесь https://imgur.com/a/QNcTbPa

массив ответов - не слишком большая проблема - вы можете легко комбинировать массивы с помощью Javascript, особенно если они имеют одинаковую структуру, тогда это совсем несложно. Если невозможно заставить API возвращать вам все данные сразу (и мы не можем дать вам точных рекомендаций по специфике API, вместо этого вам нужно проверить документацию), тогда сделайте объединение массивов в центре вашего исследования.

ADyson 31.10.2018 14:31

Проблема с Promise.all в том, что он выполняет все вызовы одновременно, что приводит к множеству 429: too many requests. Попробуйте выполнять вызовы один за другим и после каждого ответа продолжайте помещать результаты в глобальный массив.

Jeremy Thille 31.10.2018 14:32
0
2
179
0

Другие вопросы по теме