gpt4 book ai didi

node.js - 通过 Angular 前端下载在 Nodejs 中使用 pdfkit 库创建的 Pdf

转载 作者:太空宇宙 更新时间:2023-11-03 22:19:33 26 4
gpt4 key购买 nike

async createpdf(){

const doc = new PDFDocument();

doc.pipe(fs.createWriteStream('example.pdf'));

// content of the pdf

doc.end();
}

我在我的项目中使用了 Nodejs 和 Angular。为了导出 pdf,我使用了 pdfkit 库并导出了 pdf。但我需要在单击 Angular 前端中的按钮时下载 pdf。你能解释一下如何在点击 Angular 前端的按钮时下载 pdf 吗?

这是我在 component.ts 中添加的代码

exportToPdf(){
this.classroomService.createpdf();
this.subscription = this.classroomService.alertMessageOccured
.subscribe((alert) => {
if (alert.code == 200) {
this.alertService.clear();
this.alertService.success(alert.message);


} else {
this.alertService.clear();
this.alertService.error(alert.message);
}
})
}

这是按钮的代码

 <button class="btn btn-primary btn-sm float-right" (click)="exportToPdf()">
Export to PDF
</button>

最佳答案

成功创建pdf后,将成功/失败结果返回给您的客户端

为了让用户知道是否失败,

如果成功,则向下载路由发出请求

app.get('/download-pdf', function(req, res){
const pdf_file = `${__dirname}/your_file.pdf`;
res.setHeader('Content-type', 'application/pdf');
res.download(pdf_file);
});

这是一个简单的示例,但请进一步记住,要返回用于下载特定文件的唯一 ID,或进行任何其他身份验证检查。

关于node.js - 通过 Angular 前端下载在 Nodejs 中使用 pdfkit 库创建的 Pdf,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/59943597/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com