node.js错误:ENOSYS在执行命令行命令时生成

时间:2011-12-12 17:00:02

标签: javascript unix node.js

我正在尝试在unix下运行node.js,并收到此错误:

var exec = require('child_process').exec;

var commandLine = "/var/util/generate 300 300 > /tmp/barcode.png";
var childProcess;

http.createServer(function (req, res) {

var request = url.parse(req.url, true);
var action = request.pathname;

if (action == '/barcode.png') {

    console.log('executes commandLine');

    // executes 'commandLine'
    childProcess = exec(commandLine, 
        function (error, stdout, stderr) {
            sys.print('stdout: ' + stdout);
            sys.print('stderr: ' + stderr);
            var img = fs.readFileSync('/tmp/barcode.png');
            res.writeHead(200, {
                'Content-Type' : 'image/png'
            });
            res.end(img, 'binary');
            if (error !== null) {
                console.log('exec error: ' + error);
            }
        });
} else {
    res.writeHead(200, {
        'Content-Type' : 'text/plain'
    });
    res.end('QR Generate service reply: Please provide correct request parameter \n');
    }       
}).listen(8888);

console.log(“生成http://localhost:8888的QR生成服务”);

但我得到了:

Error: ENOSYS spawn
    at errnoException (child_process.js:476:11)
    at ChildProcess.spawn (child_process.js:443:11)
    at child_process.js:341:9
    at Object.execFile (child_process.js:250:15)
    at child_process.js:217:18
    at Server.<anonymous> (/base/usr/node/service.js:139:18)
    at Server.emit (events.js:70:17)
    at HTTPParser.onIncoming (http.js:1479:12)
    at HTTPParser.onHeadersComplete (http.js:102:31)
    at Socket.ondata (http.js:1375:22)

当它击中exec时(

有什么问题?

节点版本为0.6.4

1 个答案:

答案 0 :(得分:0)

我的问题没有解决方案,它是在不支持服务期间产生的平台上执行的。