Llamar a múltiples solicitudes HTTP en una sola solicitud HTTP en Node.js
Estoy tratando de llamar a múltiples URL en una sola llamada URL y empujar su respuesta json en una matriz y enviar esa matriz en respuesta al usuario final.
Mi código se ve así:
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);
});
También he intentado esto usando el módulo de solicitud npm. Cuando ejecuto este código, solo devuelve NULL o alguna salida aleatoria que solo tiene encabezados.
Mi objetivo es llamar a múltiples URL en una solicitud de obtención de un solo nodo y agregar su salida JSON en una matriz y enviarla al usuario final.
Gracias