Empresas
Empregos
  • Sobre nós
  • Soluções
    • Publicação de vagas
      Publique sua vaga e receba candidatos qualificados em 48h.
    • Avaliações de candidatos
      Mais de 500 testes técnicos e psicológicos, mais anti-fraude.
    • Headhunting
      Busca executiva personalizada do início ao fim.
    • Folha de Pagamento + EOR
      Dispersão de folha e EOR em mais de 15 países da LATAM.
  • Preços
  • Empregos

0

255
Visualizações
Cómo usar el proceso secundario y generar en la aplicación web React.js

Estoy creando esta aplicación web sobre una librería que recomienda libros en función de las selecciones de los usuarios de libros. Quiero que ejecute un script de python y para eso, he usado un proceso secundario mirando este hilo Cómo llamar a una función de Python desde Node.js

Aquí está el código:

 const spawn = require("child_process").spawn; const pythonProcess = spawn('python',["../../../python/book_recommendation.py","Timeline"]); const Recommendations = pythonProcess.stdout.on('data', (data) => { console.log(data); }); module.exports = Recommendations;

Quiero que este código se ejecute cuando haga clic en el producto y me dirija a la página productScreen. Pero me sale el error "TypeError: Spawn no es una función". Con algunas búsquedas en Google, descubrí que estoy llamando a esta función a través de reaccionar y no de node.js. Estoy usando reaccionar como frontend y node.js como backend. ¿Como puedó resolver esté problema?

Así es como importé esto en la página de reacción ProductScreen.js

 import { Recommendations } from "../machine-learning/recommendation_engine"

Aquí está la estructura de archivos de mi proyecto.

ingrese la descripción de la imagen aquí

Actualizar:

 const spawn = require("child_process").spawn; const pythonProcess = spawn('python',["../python/book_recommendation.py","Timeline"]); app.get("/product/:id", (req, res) => { pythonProcess.stdout.on('data', (data) => { console.log(data); }); });

Moví el código anterior en la carpeta backend server.js ahora. ¿Cómo lo llamo?

about 4 years ago · Juan Pablo Isaza
1 Respostas
Responde à pergunta

0

No creo que sea una buena arquitectura sabia. Pero si insiste en hacerlo de esa manera, debe generar el proceso secundario cuando lleguen las solicitudes. Luego podría canalizar su salida al flujo de respuesta. En este ejemplo, estoy usando una canalización que es algo más segura que mystream.pipe .

 const spawn = require("child_process").spawn; const { pipeline } = require('stream'); app.get("/python-process", (request, response) => { const pythonProcess = spawn('python', [ "../python/book_recommendation.py", "Timeline" ]); // pipe the python process stream into the response stream pipeline(pythonProcess, response, (err) => err && console.warn(err)); });

Tenga en cuenta que no he probado esto, pero es la esencia de cómo podría hacerlo.

about 4 years ago · Juan Pablo Isaza Relatório
Responde à pergunta
Encontrar trabalhos remotos

Descubra a nova forma de encontrar um emprego!

melhores empregos
Principais categorias de trabalho
Empresas
Postar vaga Preços Comercial
Jurídico
Termos e Condições Política de privacidade
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Recomende algumas ofertas para mim
Preciso de ajuda