нужно переслать в том же порядке в другой Api. Я правильно понимаю, что мне нужно соорудить как-то асинхронный стек? Если да, то подскажите где можно посмотреть
Так не стек же. Очередь.
Как лучше такое организовать? Ручками написать или есть готовые решения? Самое популярное на callback https://www.npmjs.com/package/queue
Сделайте реализацию просто с массивом : методами push и shift. А потом промисифицируйте каждый элемент очереди
Через linked list быстрее будет
К вопросу об асинхронной очереди. Нашел у себя в проекте такое: private prevTask: Promise<any> = Promise.resolve() public getData(targetURL: string): Promise<LinkCheckResultMulticolors> { const task = new Promise<LinkCheckResultMulticolors>((resolve, reject) => { this.prevTask.finally(() => { this.makeRequest(targetURL).then((res) => { resolve(res) }).catch((err) => { reject(err) }) }) } ) this.prevTask = task return task }
Обсуждают сегодня