我已经编写了一个nodejs程序来生成highcharts图像。它看起来像这样。
var phantom = require('phantomjs');
var childProcess = require('child_process');
var childArgs = [
'/usr/bin/Export/highcharts-convert.js',
'-infile',
'/usr/bin/infile.json',
'-outfile',
'.png',
'-constr',
'Chart',
'-callback',
'/usr/bin/callback.js'
];
childProcess.execFile(phantom.path, childArgs, null, function(error, stdout, stderr) {
console.log(error);
console.log(stdout);
console.log(stderr);
}
在这里,我将stdout作为空字符串。
但是当我从终端执行相同的命令时,我在控制台上获得了png输出。 来自终端:
/usr/bin/Export/node_modules/phantomjs/lib/phantom/bin/phantomjs /usr/bin/Export/highcharts-convert.js -infile /usr/bin/infile.json -outfile .png -constr Chart -callback /usr/bin/callback.js
通过在终端上执行此命令,我获得了png输出。但是当我运行该程序时,我在stdout中得到空字符串。那么还有其他配置吗?
提前致谢..
答案 0 :(得分:0)
将超时设置为30000到 0 ,对我有用。幻像脚本执行需要一些时间,
childProcess.execFile(phantomjs.path, args, {timeout: 0 }, function(outErr, stdout, stderr) {})
你能检查你的超时值吗?