NodeJS 我如何从API请求发送pdf到客户端

rqdpfwrv  于 2023-03-01  发布在  Node.js
关注(0)|答案(1)|浏览(132)

我正在向一个API发送一个返回PDF文件的请求。我试过res.send(data),但它不起作用,只是返回一个空白的PDF文件。

rp("URI")
    .then(data =>{
        res.contentType("application/pdf")
        res.send(data)
    })
    .catch(e =>{
        console.log(e)
    })
vngu2lb8

vngu2lb81#

  • 发送用于普通HTTP响应,如JSON、XML等。
  • 要发送文件,需要使用filePath及其参数调用res.sendFile

它看起来像这样

app.get('/file/:name', function (req, res, next) {

  var options = {
    root: __dirname + '/public/',
    dotfiles: 'deny',
    headers: {
        'x-timestamp': Date.now(),
        'x-sent': true
    }
  };

  var fileName = req.params.name;
  res.sendFile(fileName, options, function (err) {
    if (err) {
      next(err);
    } else {
      console.log('Sent:', fileName);
    }
  });

});

相关问题