Вызов нескольких HTTP-запросов в одном HTTP-запросе в Node.js

Я пытаюсь вызвать несколько URL-адресов в одном вызове URL-адреса и передать его ответ json в массиве и отправить этот массив в ответ конечному пользователю.

Мой код выглядит так:

var express = require('express');

var main_router = express.Router();

var http = require('http');

urls = [
"http://localhost:3010/alm/build_tool",
"http://localhost:3010/alm/development_tool",
"http://localhost:3010/alm/project_architecture"];

var responses = [];

main_router.route('/')

.get(function (req, res) {

var completed_requests = 0;

for (url in urls) {

  http.get(url, function(res) {

    responses.push(res.body);

    completed_request++;

    if (completed_request == urls.length) {

        // All download done, process responses array
    }
  });
}
res.send(responses);
});

Я также попробовал это с помощью модуля запроса npm. Когда я запускаю этот код, он возвращает только NULL или некоторый случайный вывод, который имеет только заголовки.

Моя цель - вызвать несколько URL-адресов в одном узле, получить запрос, добавить его вывод JSON в массив и отправить конечному пользователю.

Спасибо

Ответы на вопрос(2)

Ваш ответ на вопрос