python - exec child_process in a node js module -
i'm createing node module want have function called cpuutilization calls python script , stdout returned.
var sys = require('sys') var exec = require('child_process').exec; exports.cpuutilization = function() { exec('./nodeprime/cpuutilization.py', function (error, stdout, stderr) { return(json.parse(stdout)); }); }
you net result cpuutilizationbecause return statement not apply function, callback within function.
you need transform code asynchronous 1 , homecoming result using callback well:
exports.cpuutilization = function (callback) { exec('./nodeprime/cpuutilization.py', function (err, stdout, stderr) { if (err) homecoming callback(err); callback(null, json.parse(stdout)); }); }; it's mutual sense callbacks in node.js should homecoming (at least) 2 parameters, first 1 error instance, , sec 1 contains actual data.
now can utilize function, e.g.:
cpuutilization(function (err, data) { // info ... }); generally i'd recommend create familiar higher-order functions.
python node.js
No comments:
Post a Comment