将phantomJS部署到node.js应用程序?

我意识到“在Heroku上运行PhantomJS”是一个相关但略有不同的问题,因为我正在尝试使用节点应用程序。

我在为节点应用程序部署casperJS(基于phantomJS)脚本时遇到问题。 我已经尝试通过将PhantomJS 64位二进制文​​件放入我的应用程序的/bin目录来尝试部署到Heroku,但是当我尝试运行PhantomJS时遇到以下错误:

 phantomjs: error while loading shared libraries: libQtWebKit.so.4: cannot open shared object file: No such file or directory 

从我读过这可以通过安装QtWebKit库解决,但Heroku没有安装。 是否有另一个托pipe服务提供商可以使用,或者在Heroku上安装这个软件包?

相关代码:

 app.get('/', function(request, response) { var sys = require('sys') var exec = require('child_process').exec; var child; //works but gives error while loading shared library libqtwebkit.so.4 child = exec("phantomjs --version | tr -d '\n'", function(error, stdout, stderr) { sys.print('stdout: ' + stdout); sys.print('stderr: ' + stderr + '\n'); response.header('Content-Type', 'application/json'); response.send('_testcb(stdout:' + stdout + '\nstderr:' + stderr + ')', 200); if(error !== null) { console.log('exec error: ' + error); } }); }); 

我已经注册了Nodester的betatesting,但是他们的文档在这方面还是相当有限的。

编辑:我能够得到它的工作,只需将PhantomJS的lib文件夹复制到我的节点应用程序的根目录。

将phantomjs的lib文件夹复制到节点应用程序的根目录您也可以尝试在bin或sbin中放置sym链接关键是必须使用与运行节点相同的帐户从terminal运行。 此外,节点幻像是一个很好的npm库来利用phantomjs,一旦你得到它的工作。