Вопрос

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.

Это было полезно?

Решение

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');
Лицензировано под: CC-BY-SA с атрибуция
Не связан с StackOverflow
scroll top