您好, 欢迎来到 !    登录 | 注册 | | 设为首页 | 收藏本站

如何从node.js调用外部脚本/程序

如何从node.js调用外部脚本/程序

参见child_process。这是一个使用的示例spawn,它允许您在输出数据时写入stdin并从stderr / stdout中读取。如果您不需要写stdin并且可以在过程完成时处理所有输出,请child_process.exec提供稍短一些的语法来执行命令。

// with express 3.x
var express = require('express'); 
var app = express();
app.use(express.logger('dev'));
app.use(express.bodyParser());
app.use(app.router);
app.post('/upload', function(req, res){
   if(req.files.myUpload){
     var python = require('child_process').spawn(
     'python',
     // second argument is array of parameters, e.g.:
     ["/home/me/PythonScript.py"
     , req.files.myUpload.path
     , req.files.myUpload.type]
     );
     var output = "";
     python.stdout.on('data', function(data){ output += data });
     python.on('close', function(code){ 
       if (code !== 0) {  
           return res.send(500, code); 
       }
       return res.send(200, output);
     });
   } else { res.send(500, 'No file found') }
});

require('http').createServer(app).listen(3000, function(){
  console.log('Listening on 3000');
});
Node 2022/1/1 18:13:38 有645人围观

撰写回答


你尚未登录,登录后可以

和开发者交流问题的细节

关注并接收问题和回答的更新提醒

参与内容的编辑和改进,让解决方法与时俱进

请先登录

推荐问题


联系我
置顶