在节点.js应用程序中,我想生成pdf文档并将其发送回用户。我想使用虾PDF,因为我以前用过它,并且使用它很舒服。
我想我应该使用 node 的 child_process.spawn 来调用一个 ruby 脚本(返回一个 pdf)来实现这一点,但我不知道如何实际实现它!
我这样做: spawn = require('child_process').spawn; pdf = spawn('my_ruby_script');
现在如何获取返回的 pdf 文档?
谢谢马诺
我最终得到了这个:
var spawn = require('child_process').spawn;
var child = spawn('ruby', ['print_pdf.rb', doc_id]);
var pdf = '';
child.on('data', function(data){
pdf += data;
});
child.on('exit', function(code){
if(code == 0){
res.setHeader('Content-Type', 'application/pdf');
res.send(pdf);
}
});
红宝石虾脚本生成 pdf,最后只是"放置"渲染的 pdf,该 pdf 可作为"数据"提供给孩子。