I am trying to get the response received from the server in the same order as there url's were passed as command line arguments.But it does not perform sync operation please help. I am relatively new to javascript and node. please find my code below:
var http = require('http');
var bl = require('bl');
var fs = require('fs');
var q = [];
var count = 0;
q[0] = getRequest(process.argv[2]);
q[1] = getRequest(process.argv[3]);
q[2] = getRequest(process.argv[4]);
function getRequest(url) {
var val;
http.get(url,function (res) {
res.on('end', function () {
count++;
}),
res.pipe(bl(function (error, data) {
val = data.toString();
if (error) {
console.log(error);
}
else {
console.log(val);
}
}))
}).on('error', function (e) {
console.log("Got error: " + e.message);
});
return val;
}
if (count == 3) {
for (var i = 0; i < q.length; i++) {
console.log[q[i]];
}
}