如何使用NodeJS输出PDF缓冲区到浏览器?

所以我使用html-pdf来转换我的html,这里是我的代码:

var pdf = require('html-pdf') var html = 'somehtmlfile.html' pdf.create(html).toBuffer(function (err, buffer) { if (err) { console.log(err) } else { console.log(buffer) var pdfBuffer = new Buffer(buffer) res.setHeader('Content-disposition', 'inline; filename="test.pdf"'); res.setHeader('Content-type', 'application/pdf'); res.send(pdfBuffer) } } 

我没有得到任何PDF文件下载,也没有在浏览器中的PDF文件的任何输出。 console.log(buffer)是这样的:

 <Buffer 25 50 44 46 2d 31 2e 34 0a 31 20 30 20 6f 62 6a 0a 3c 3c 0a 2f 54 69 74 6c 65 20 28 fe ff 29 0a 2f 43 72 65 61 74 6f 72 20 28 fe ff 29 0a 2f 50 72 6f ... > 

有没有一个简单的方法来做到这一点? 还是我做错了?

我只想在浏览器中以PDF格式输出缓冲区。

改成:

 pdf.create(html).toStream(function(err, stream) { if (err) { console.log(err) } else { res.set('Content-type', 'application/pdf'); stream.pipe(res) } });