node.js Ошибка: ENOSYS порождает при выполнении команды командной строки - PullRequest
2 голосов
/ 12 декабря 2011

Я пытаюсь запустить node.js под Unix, и получаю эту ошибку из-за:

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 ("Служба QR Generate, запущенная на http://localhost:8888");

Но я получаю:

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 голосов
/ 16 октября 2012

Нет решения для моей проблемы, оно было выполнено на платформе, которая не поддерживает порождение периода обслуживания.

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