Question

How do I realise early flush (chuncked transfer encoding) with Express?

All examples I have found are dealing with the http module, where you can call the write() method of the response object and that way send data piece-wise.

Was it helpful?

Solution

You can still use write with Express:

app.get('/test', function(req, res) {
  var count     = 0;
  var interval  = setInterval(function() {
    if (count++ === 5) {
      clearInterval(interval);
      res.end();
      return;
    }
    res.write('This is line #' + count + '\n');
  }, 1000);
});

EDIT: for proper chunked transfer encoding, make sure the set the transfer-encoding header appropriately:

res.setHeader('transfer-encoding', 'chunked');
Licensed under: CC-BY-SA with attribution
Not affiliated with StackOverflow
scroll top