загрузить js файл в express - PullRequest
       5

загрузить js файл в express

0 голосов
/ 13 января 2020

Я создал node js программу: data. js: location это данные контроллеров. js

var myPythonScriptPath = 'script.py';

const {PythonShell} = require("python-shell");
var pyshell = new PythonShell(myPythonScriptPath);

var moduel= pyshell.on('message', function (message) {
console.log(message);
});

pyshell.end(function (err) {
    if (err){
        throw err;
   };

    console.log('finished');
});

Я создал express framework: APP. JS:

 const express = require('express')
 const app = express()
 app.get('/', (req, res) => {

pyshell.stdout.on('data', function(data) {

    console.log(data.toString());
    res.write(data);
    res.end('end');
});
})

app.listen(4000, () => console.log('Application listening on port 4000!'));

Я хочу открыть данные. js файл в приложении. JS файл, так что он может маршрутизировать к данным. js файл хранится в папке контроллеров и отображать данные данных. js на сервере.

1 Ответ

0 голосов
/ 13 января 2020

Используйте module.exports для экспорта любой функции в файле.

//server.js
var ctrl = require('./controllers/data.js');
app.get('/', ctrl.getData);





//controllers/data.js
var myPythonScriptPath = 'script.py';

const {PythonShell} = require("python-shell");
var pyshell = new PythonShell(myPythonScriptPath);


function getData(req, res){
    // do your pyShell activities here.
    // sends a message to the Python script via stdin
pyshell.send('hello');

pyshell.on('message', function (message) {
  // received a message sent from the Python script (a simple "print" statement)
  console.log(message);
        res.send(message);

});

// end the input stream and allow the process to exit
pyshell.end(function (err,code,signal) {
  if (err) throw err;
  console.log('The exit code was: ' + code);
  console.log('The exit signal was: ' + signal);
  console.log('finished');
  console.log('finished');
});
}

module.exports = {
    getData: getData
}
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...