Отправить поток ответа NodeJS ExpressJS - PullRequest
0 голосов
/ 19 февраля 2019

Я хотел бы отправить обратно клиенту поток ответов от пакета твиттера npm .

Конечная точка выглядит как

var client = new Twitter({
 consumer_key: '',
 consumer_secret: '',
 access_token_key: '',
 access_token_secret: ''
});

app.get('/', function(req,res) {
  const stream = client.stream('statuses/filter', {track: 'crypto'});
  stream.on('data', function(event) {
    res.status(200).json({tweet: event && event.text || 'nothing'})
 });
});

сервер один раз отвечает клиентскому приложению, а затем выдает ошибку, что заголовки уже отправлены Error [ERR_HTTP_HEADERS_SENT]: Cannot set headers after they are sent to the client, как мне ответить потоком?

Спасибо.

1 Ответ

0 голосов
/ 19 февраля 2019

Итак, используйте

res.write().

Это не заканчивается, поэтому вы можете добавлять вызовы несколько раз, в то время как после res.json & res.send вы не можете писать в res больше.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...