【发布时间】:2016-04-27 05:59:48
【问题描述】:
我正在使用pdfKit 生成一些 pdf 文件。用户应该点击一个按钮来获取这个文件——它是在服务器上生成的。此外,我使用Picker 进行服务器端路由。
server.js
Picker.route('/generate/getPdf', function(params, req, res, next) {
var doc = new PDFDocument({size: 'A4', margin: 50});
doc.fontSize(12);
doc.text('PDFKit is simple', 10, 30, {align: 'center', width: 200});
res.writeHead(200, {
'Content-Type': 'application/pdf',
'Content-Disposition': 'attachment; filename=test.pdf'
});
res.end(doc.outputSync());
});
html
<template name="example">
<button id="generatePdf">Generate it</button>
</template>
client.js
Template.example.events({
'click #generatePdf': function(event) {
HTTP.call( 'GET', 'http://localhost:3000/generate/getPdf', {}, function( error, response ) {
if (error) {
console.warn(error);
}
});
}
});
我希望在单击按钮时获得 pdf 文件,但没有任何反应。如果我手动转到 url,我会得到文件。那我做错了什么?
【问题讨论】:
标签: javascript meteor pdf-generation