Chamando várias solicitações HTTP em uma única solicitação HTTP no Node.js

Estou tentando chamar vários URLs em uma única chamada de URL e enviar sua resposta json em uma matriz e enviar essa matriz em resposta ao usuário final.

Meu código fica assim:

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);
});

Eu também tentei isso usando o módulo de solicitação npm. Quando executo esse código, ele retorna apenas NULL ou alguma saída aleatória que possui apenas cabeçalhos.

Meu objetivo é chamar várias URLs em um único nó, obter solicitação e anexar sua saída JSON em uma matriz e enviar para o usuário final.

obrigado

questionAnswers(2)

yourAnswerToTheQuestion