如何在节点/快速应用程序中使用虾PDF
在node.js应用程序中,我想生成pdf文档并将其发回给用户。 我想用我以前用过的Prawn PDF,并且很舒服地使用它。
我想我应该使用节点的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); } });
ruby虾脚本生成pdf,最后只是将提供给孩子的呈现的pdf“放”成“数据”。