Tôi đang làm việc trên meanjs
ứng dụng được tạo bằng cách sử dụng https://github.com/DaftMonk/generator-angular-fullstack. Tôi đang cố gắng tạo tệp .pdf bằng cách sử dụng phantomjs
và tải xuống trình duyệt.Tệp .pdf đã tải xuống bị hỏng khi sử dụng expressjs
Vấn đề là tệp .pdf đã tải xuống luôn hiển thị các trang trống bất kể số trang. Tệp gốc trên máy chủ không bị hỏng. Khi tôi điều tra thêm, thấy rằng tệp đã tải xuống luôn lớn hơn nhiều so với tệp gốc trên đĩa. Vấn đề này cũng chỉ xảy ra với tệp .pdf. Các loại tệp khác đang hoạt động tốt.
Tôi đã thử một số phương pháp như res.redirect('http://localhost:9000/assets/exports/receipt.pdf');
, res.download('client\\assets\\exports\\receipt.pdf')
,
var fileSystem = require('fs');
var stat = fileSystem.statSync('client\\assets\\exports\\receipt.pdf');
res.writeHead(200, {
'Content-Type': 'application/pdf',
'Content-Length': stat.size
});
var readStream = fileSystem.createReadStream('client\\assets\\exports\\receipt.pdf');
return readStream.pipe(res);
và thậm chí tôi đã cố gắng với https://github.com/expressjs/serve-static không có thay đổi trong kết quả.
Tôi mới đến nodejs
. Cách tốt nhất để tải xuống tệp .pdf xuống trình duyệt là gì?
Cập nhật: Tôi đang chạy này trên Windows 8.1 64bit Computer
Tôi gặp sự cố tương tự khi làm việc với ngăn xếp microsoft và AngularJS SPA. Khi tiêu đề đã chính xác, tệp đã được phục vụ đúng cách cho ứng dụng khách, nhưng blob của ứng dụng khách đã không lưu ngay cho đến khi tôi sử dụng filesaver.js. –
Cùng một vấn đề ở đây. Điều này có được giải quyết không ?? – Chinni