node.js: Как определить пустой поток stdin?

У меня есть сценарий / сервер node.js, который считывает некоторые входные данные из stdin при запуске. Однако иногда нет данных для передачи. Это вызывает беспокойство, потому что в этом случае кажется, что в этом случае не вызываются ни события data , ни end . Как я могу определить, когда это имеет место в коде node.js?

Я бы не хотел добавлять специальные «конечные» символы в конце ввода, чтобы не доставлять неудобства клиенту. Соответствующий код приведен ниже:

  var newHTML = '';
  var gfm = spawn(__dirname + '/node_modules/docter/bin/github-flavored-markdown.rb');
  process.stdin.on('data', function(chunk){
    gfm.stdin.write(chunk);
  });
  process.stdin.on('end', function(){
    gfm.stdin.end();
  });
  gfm.stdout.on('data', function(data) {
    newHTML += data;
  });
  gfm.on('exit',function(ecode){
    socket.emit('newContent', newHTML);
  });
  process.stdin.resume();
18
задан Suan 10 February 2012 в 17:12
поделиться