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