http.request() di Node restituisce i dati in pezzi
per lo streaming (sarebbe bello se lo affermassero esplicitamente). Quindi è necessario scrivere ogni pezzo nel corpo della risposta di Express, ascoltare la fine del http richiesta
(che non è realmente documentato), quindi chiama response.end()
per completare effettivamente la risposta.
var req = http.request(options, function(res)
{
res.on( 'data', function(chunk) { response.write(chunk); } );
res.on( 'end', function() { response.end(); } );
}
);
req.on('error', function(error) { … });
req.end();
Dove response
è la risposta di Express alla richiesta iniziale del client (chiamata ajax di curl o angular).