Получить данные из массива URL с временем задержки - PullRequest
0 голосов
/ 05 июня 2019

Я хочу получить ответ от массива URL-адресов, например:

let arrUlr = [ 'https://my.domain.base/api/v1/people/?auth_token=71bdf0377bc%%$%&count=100&page=1',
  'https://my.domain.base/api/v1/people/?auth_token=71bdf0377bc%%$%&count=100&page=2',
  'https://my.domain.base/api/v1/people/?auth_token=71bdf0377bc%%$%&count=100&page=3',
  'https://my.domain.base/api/v1/people/?auth_token=71bdf0377bc%%$%&count=100&page=4',
  'https://my.domain.base/api/v1/people/?auth_token=71bdf0377bc%%$%&count=100&page=5',
  'https://my.domain.base/api/v1/people/?auth_token=71bdf0377bc%%$%&count=100&page=6' ]

Объемные данные поступают в виде кусков;моя стратегия iterate arrUlr в for loop, но мне нужно отложить время в нем, чтобы предотвратить это:

Сообщение от CloudFlare ( выглядит так, как сервер избегает подачичастые запросы ):

response: 
{ status: 429,
     statusText: 'Too Many Requests',
     headers: 
      { date: 'Tue, 04 Jun 2019 22:37:00 GMT',
        'transfer-encoding': 'chunked',
        connection: 'close',
        'set-cookie': [Array],
        status: '429 Too Many Requests',
        'cache-control': 'no-cache',
        'x-ratelimit-limit': '3',
        'x-ratelimit-reset': '2019-06-04 22:37:01 UTC',
        'x-request-id': '0fa7395b-df8d-4c8a-bc5b-52d0e46c4138',
        'x-runtime': '0.001619',
        'x-ratelimit-period': '1',
        'x-powered-by': 'Phusion Passenger Enterprise',
        'expect-ct': 'max-age=604800, report-uri="https://report-uri.cloudflare.com/cdn-cgi/beacon/expect-ct"',
        server: 'cloudflare',
        'cf-ray': '4e1d63897b2db594-BOG' }, ... ]

Итак, это моя идея:

    for(let url of arrUlr){
       /*for(let i=0; i < arrUlr.lenght; i++) is a alternative*/
       setTimeout( ()=>{
           axios.get(url)
                .then(res =>{
                  console.log(res.data) /*whatever it comes*/
                })
       }, 5000)
    }
  • Что вы, ребята, рекомендуете для достижения этой цели оптимально?
  • Это правильный подход?
  • Как получить звонок по порядку с задержкой в ​​3 секунды?

Большое спасибо.

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