React fetch получает ответ от обратного вызова, только если все запросы завершены - PullRequest
0 голосов
/ 30 января 2019

Я использую реагирующую выборку для опроса GET API-запроса периодически каждые 5 секунд.Первые 8 запросов работают правильно, то есть я сразу получаю ответ на каждый запрос, но затем возникает проблема, когда в очереди ожидают другие запросы API, и я получаю сообщение «ВНИМАНИЕ: запрос еще не завершен».Я получил ответ, только если все запросы завершены (кажется, что он ожидает завершения всех запросов, а затем возвращает ответ в обратном вызове).

Как я могу получить ответ на каждый запрос сразу, не ожидая всехзапросы на завершение?

fetch(url, {
        method: 'GET',
        headers: {
            Accept: 'application/json',
        },
    }).then(function (response) {
        return response.json();
    }).catch(function (error) {
        console.log(error);
    }).then((response) => {
        if (response != null) {
             // Got the response only if all requests are finished
            this.setState({
                ...
            })
        }
    })
}

ДОПОЛНИТЕЛЬНАЯ ИНФОРМАЦИЯ. Я использую Spring Boot в качестве сервера API, конечную точку GET.

1 Ответ

0 голосов
/ 30 января 2019

Вызов вызов возвращает обещание.Таким образом, вы не должны немедленно вызывать другую функцию, а должны предоставить функцию, которая должна вызываться при успешном разрешении обещания.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...