Sto tentando di reindirizzare lo stdout & stdin di un child_process in un browser & visualizzarlo in una pagina HTML. Sto usando browserify per far funzionare node.js sul browser. Il mio codice per generare il child_process è come questo.pipe processo figlio stdout e stdin al browser in node.js e browserify
var child = require('child_process');
var myREPL = child.spawn('myshell.exe', ['args']);
// myREPL.stdout.pipe(process.stdout, { end: false });
process.stdin.resume();
process.stdin.pipe(myREPL.stdin, { end: false });
myREPL.stdin.on('end', function() {
process.stdout.write('REPL stream ended.');
});
myREPL.on('exit', function (code) {
process.exit(code);
});
myREPL.stdout.on('data', function(data) {
console.log('\n\nSTDOUT: \n');
console.log('**************************');
console.log('' + data);
console.log('==========================');
});
Ho creato un bundle.js utilizzando browserify e il mio html ha questo aspetto.
<!doctype html>
<html lang="en">
<head>
<meta charset="utf-8" />
<title></title>
<!--[if IE]>
<script src="http://html5shiv.googlecode.com/svn/trunk/html5.js"></script>
<![endif]-->
<script src="bundle.js"></script>
<script src="main.js"></script>
</head>
<body>
</body>
</html>
Sto cercando di evitare di eseguire un server http e di eseguire il piping dei risultati nel browser. C'è un altro modo in cui posso farlo? Grazie
qual è il problema? Qualche messaggio di errore? –
sì, quindi nel browser process.stdin e process.stdout sono indefiniti che tipo di ha senso dal momento che il browser non dovrebbe supportarlo. Ma non sono sicuro di come aggirarlo – ssarangi