javascript — очередь на вызов API, использующая реагирование с избыточностью?

Очередь для вызова API, используя реагировать с избыточным?

Я рассматриваю сценарий, что всякий раз, когда я делаю более одного вызова API, он не должен вызывать все API одновременно, вместо этого он должен выдвигаться в очередь всякий раз, когда выполняется вызов API, и как только я получаю ответ, я должен сделать вызов API из очереди. если длина очереди больше 0.

 let queueToBeExecuted = []; let apiInProgressCheck = false; const apiInProgressCheckFn = (data,url) ={amp}gt; { apiInProgressCheck = data; if (apiInProgressCheck === true ){ queueToBeExecuted.push(url); console.log('queue', queueToBeExecuted) } else { const itemToAdd = queueToBeExecuted.shift(); console.log('shift', queueToBeExecuted) // i have to make a api call again } return apiInProgressCheck; } const makingAnApiCall = async (url) ={amp}gt; { response = await axios({ url, method: get }); if (response.status) { apiInProgressCheckFn(false, url); if (response.status === 200 || response.status === 201) { dispatch(success(response)); } else { dispatch(failed(response)); } } }; export default makingAnApiCall; 

Я создал функцию javascript под названием «makeAnApiCall», всякий раз, когда я вызывал эту функцию, вызов API вызывался и отправлял соответствующие действия на основе ответа, а также значения локальных переменных сбрасывались. Так что я не смог остановить вызов API. Может ли кто-нибудь помочь в достижении этой очереди для вызовов API и предложить мне лучший подход для достижения того же, используя либо javascript, либо реагировать с избыточностью?

Понравилась статья? Поделиться с друзьями:
JavaScript & TypeScript
Adblock
detector