I have a simple nodeJS server that fetches data from another server and store them in a JSON files, i need to write a status about each file fetched and generated, but that doesn't work, because i have to execute response.end(), which implies that i can't write to the stream again, without ending the stream
here's my code:
      var http = require('http');
  var module = require('fs');
  var APIs = [ '/servlet/en', '/servlet/fr' ];
  var langs =[ 'en', 'fr' ];
  var finish = false;
  var host = 'http://www.localtest';
  const port = process.argv[2] || 9000;
  var responses = [];
  http.createServer(function (req, response) {
    for (x in APIs){
      console.log(x);
    var options = {
      host: 'localtest',
      port: 8888,
      path: APIs[x],
      lang: langs[x]
    };
    http.get(options, function(res) {
        res.setEncoding('utf8');
        var body='';
        res.on('data', function(chunk){
          body += chunk;
        });
        res.on('end', function(chunk){
          responses.push(body);
          if (responses.length == 2){
          var d = JSON.parse(responses[1]);
          var d2 = JSON.parse(responses[0]);
        module.writeFileSync("options.lang1"+".json",JSON.stringify(d) , 'utf-8');
        module.writeFileSync("options.lang2"+".json",JSON.stringify(d2) , 'utf-8');
        }
        });
    });
  }
  }).listen(parseInt(port));
  console.log(`Server listening on port ${port}`);
An example, i tried to write a message to the user after the line : responses.push(body); using response.write(), but this method needs an response.end() in order to be executed and displayed on the browser, If i do that i can't write to the stream anymore!
 
    