所以我有一个有会员区的网站。该成员区域通过名为CCBill的支付处理器进行管理。为了让CCBill管理我服务器上的密码文件,他们需要执行cgi脚本。
现在,我已经查看了cgi和serve-cgi npm模块。但我不确定他们是否可以做我需要的事情。任何人都可以帮我这个吗?
我的快速路由器获取功能:
router.get('*', function(req, res, next) {
console.log('in');
var mPath = path.join(appRoot, '/cgi-bin' + req.params[0]);
console.log(mPath);
const execFile = require('child_process').execFile;
const child = execFile(mPath, function(error, stdout, stderr) {
if (error) {
console.log(error);
throw error;
}
console.log(stdout);
});
});
答案 0 :(得分:0)
可以使用exec()函数调用脚本(和其他可执行文件):
var exec = require('exec');
exec('/path/to/your/script',
function (stderr, stdout, errorCode) {
// You get here when the executable completes
}
}
修改强>
对于较新的node.js版本exec()
已弃用,因此最好使用child_process.execFile():
const execFile = require('child_process').execFile;
const child = execFile('/path/to/your/script', [parameters], (error, stdout, stderr) => {
// You get here when the executable completes
});