Quiero usar secuencias de comandos de Python con mi servidor Node.JS, pero cada vez que ejecuto el servidor de nodos, la secuencia de comandos de Python no se ejecuta. Inicia el servidor pero no se ejecuta Python. Creo que está en esta parte del código, pero no estoy exactamente seguro.
Mi index.js:
app.post("/readPython", (request, response) => { var dataToSend; const python = spawn('python', ['python/cookie.py'], "Kevin"); python.stdout.on('data', function (data) { dataToSend = data.toString(); }); python.stderr.on('data', data => { console.error(`stderr: ${data}`); }); python.on('exit', (code) => { console.log(`child process exited with code ${code}, ${dataToSend}`); response.sendFile(`${__dirname}/html/result.html`); }); });
Mi secuencia de comandos de Python:
import sys print("Hello World!") sys.stdout.flush()
No sé exactamente qué debo esperar, pero sea lo que sea, el script no se está ejecutando. ¿Alguna ayuda?
el tercer argumento (opciones) en spawn()
debería ser un objeto. Supongo que estás tratando de enviar a Kevin como argumento. debería ser como
const python = spawn('python', ['helloworld.py',"Kevin"]); python.stdout.on('data', (data)=> { console.log(data.toString()); });