Я пробовал это многими способами (очередь, с / без асинхронного модуля, обработчик и т. Д.), Но я не могу понять, как применить управление последовательным потоком к асинхронному HTTP-запросу и его обратный вызов.У меня есть массив URL-адресов, которые я хочу использовать для выполнения http-запросов и вставки отдельных документов в каждый ответ в коллекцию mongo db.Как только вставки закончены, я хочу перейти к следующему http-запросу.Вот где я нахожусь, но это все еще запускает все запросы http, прежде чем произойдет вставка.
var request = require('request');
var async = require('async');
var urls = ['http://getsomejson/1', 'http://getsomejson/2', 'http://getsomejson/3'];
async.forEachSeries(urls, function(url, callback) {
// All of these requests are firing before http request callback logic is executed
request(url, function (error, response, body) {
async.forEachSeries(body.docs, function(doc, callback) {
// Do the inserts for this response
callback();
}, function(err) {
// handle errors
});
})
callback();
}, function(err) {
// handle errors
});
Любые предложения будут с благодарностью.