Tengo un script/servidor node.js que lee alguna entrada de stdin cuando se inicia. Sin embargo, a veces no hay datos para pasar. Esto es problemático porque parece que en este caso no se invocan los eventos data
ni end
. ¿Cómo puedo detectar cuando este es el caso en el código node.js?node.js: ¿Cómo detectar una secuencia stdin vacía?
Me gustaría evitar tener que agregar caracteres especiales "finales" al final de la entrada, para no molestar al cliente. El código asociado es a continuación:
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();
Ha intentado process.stdin.on ('error', function() {})? – Marshall
o gfm.stdout.on ('error', function() {}) – Marshall
encontró una solución? eso parece imposible. – antitoxic