node.js - 如何从 node.js 中的 url 下载 pdf 文件?

标签 node.js pdf express

我正在创建一个应用程序来从 url 下载 pdf 文件并在我的仪表板页面中以网格方式显示。

我正在使用 node.js 和 express 框架。

exports.pdf = function(req, response) {
    var url ="http://www.ieee.org/documents/ieeecopyrightform.pdf";

    http.get(url, function(res) {
     var chunks = [];
     res.on('data', function(chunk) {
     console.log('start');
     chunks.push(chunk);
    });

    res.on("end", function() {
      console.log('downloaded');
      var jsfile = new Buffer.concat(chunks).toString('base64');
      console.log('converted to base64');
      response.header("Access-Control-Allow-Origin", "*");
      response.header("Access-Control-Allow-Headers", "X-Requested-With");
      response.header('content-type', 'application/pdf');
     response.send(jsfile);
    });
    }).on("error", function() {
   console.log("error");
   }); 
};

最佳答案

对于那些希望下载 PDF 服务器端的人来说,这与 OP 的用例有点不同,这是我使用 request 完成的方法npm 模块:

const fs = require("fs");
const request = require("request-promise-native");

async function downloadPDF(pdfURL, outputFilename) {
    let pdfBuffer = await request.get({uri: pdfURL, encoding: null});
    console.log("Writing downloaded PDF file to " + outputFilename + "...");
    fs.writeFileSync(outputFilename, pdfBuffer);
}

downloadPDF("https://www.ieee.org/content/dam/ieee-org/ieee/web/org/pubs/ecf_faq.pdf", "c:/temp/somePDF.pdf");

关于node.js - 如何从 node.js 中的 url 下载 pdf 文件?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/25945714/

相关文章:

node.js - Joi验证: minimum length function is not working

c# - 在 Reportviewer Azure 中创建 PDF 时出错

node.js - 无法访问 connect-mongo 的原型(prototype)函数

javascript - 如何在express js中的中间件之后渲染不在公共(public)或查看文件夹中的静态文件

sql - 书架查询更新表

javascript - How to run a gulp task from Node.js - Any better alternative to gulp.start()?

javascript - 如何在 AngularJS 应用程序中预览 PDF 文件?

java - 复杂 Web 应用程序上的 ConversionInputException

node.js - 在快速路由 api 中添加命名参数

node.js - 在 nodejs 中使用 Html 文件作为模板发送带有一些复杂级别数据的营销电子邮件