console.log schreibt stdout
, so dass man sie hören kann und was mit den Daten zu tun.
console.log ([Daten] [args])
Drucke mit Newline nach stdout.
https://nodejs.org/api/console.html
Versuchen Sie diesen Code voran.
const spawn = require('child_process').spawn
const ls = spawn('ls', ['-lh', '/usr'])
const collectedData = []
ls.stdout.on('data', (data) => {
console.log('stdout: ' + data.toString())
collectedData.push({ event: 'CONSOLE_LOG', data })
// now just make the client consume collectedData in real-time
// or on refresh
})
ls.stderr.on('data', (data) => {
console.log('stderr: ' + data.toString())
})
ls.on('exit', (code) => {
console.log('child process exited with code ' + code.toString())
})
Child Prozesse eingebaut werden Nehmen Sie eine Probe durch diese Dokumente hier: https://nodejs.org/api/child_process.html
Ich weiß nichts über Ihre Einrichtung, aber wenn Sie super einfach in Express
wollen
Machen Sie den Client es alle 2000ms oder so.
Andernfalls müssen Sie einen Socket mit dem Server erstellen und Aktualisierungen an den Client senden und sie im Client verarbeiten.
Sie können auch Setup-TCP und UDP-Sockets ziemlich schnell in node.js. Mach etwas googeln.
Ich habe einige Beispiel-Code kann ich Ihnen geben:
/**
* SERVER
*/
// Load dgram module
const dgram = require('dgram')
// Create new socket
const server = dgram.createSocket('udp4')
// Listening event
server.on('listening',() => console.log('UDP Server listening'))
// Message event
server.on('message', (msg, rinfo) => {
console.log(`${rinfo.address}:${rinfo.port} - ${msg}`)
});
// Start UDP socket listener
const PORT = 3333
const HOST = '127.0.0.1'
server.bind(PORT, HOST)
/**
* CLIENT
*/
const client = dgram.createSocket('udp4')
const ip = require('ip')
client.send('Sample message', PORT, HOST, (err) => {
if (err) throw err
console.log(`UDP message sent: ${ip.address()}`)
client.close()
})