Axios - неизвестное количество множественных запросов - PullRequest
0 голосов
/ 13 июня 2019

Axios показывает, что вы можете делать несколько запросов одновременно, используя:

function getUserAccount() {
  return axios.get('/user/12345');
}

function getUserPermissions() {
  return axios.get('/user/12345/permissions');
}

axios.all([getUserAccount(), getUserPermissions()])
  .then(axios.spread(function (acct, perms) {
    // Both requests are now complete
  }));

Похоже, вам нужно знать, сколько запросов будет выполнено. Моя проблема в том, что я не знаю, какие или сколько запросов нужно будет выполнить в любой момент.

Итак, я создал функцию, которая будет готовить запросы:

createAxiosRequest(id) {
        return axios.get('https://someapi.com/' + id);
      }

    prepareRequests(numOfReq){
       var arr=[];
           for(var i = head ; i > 0; i--){
            arr[i] = createAxiosRequest(i);
            }
    }

Так что здесь я, по сути, возвращаю массив со всеми запросами. Затем я беру этот массив и помещаю его в:

axios.all(prepareRequests(13))
            .then(axios.spread(function (acct, perms) {//What do I do here now?

            }))

И вот где моя проблема. Я не знаю, сколько запросов будет, поэтому я не могу заранее указать ответы "acct, perms и т.д.". Тогда я не уверен, как сделать так, чтобы я мог получать все запросы, а также я хочу, чтобы запросы по-прежнему проходили, даже если один или два не были выполнены, но, похоже, это выполняется, если все они успешны.

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