我使用nssm运行Node.js项目作为服务。当用户点击我的nodejs网站上的按钮时,它应该运行
require('child_process').exec('cmd /c batfile.bat', function({ res.send(somedata); });
但它只是跳过运行bat文件并跳转到res.send(somedata)
。这是为什么?
当我使用cmd和npm start server.js
运行Node.js时,它工作正常。如何在运行nodejs作为服务时使exec工作?
编辑,一些代码:
require('child_process').exec('cmd /c batfile.bat', function(){
var log = fs.readFileSync('logs/batlog.log', 'utf8');
var html = fs.readFileSync('logs/batlog.htm', 'utf8');
var json = {"log": log, "html": html};
res.send(json);
});
并且batfile.bat应该生成这两个文件但是如果我将nodejs作为服务运行它就没有了。