React从Node下载pdf文件并在选项卡中打开

暗恋

我设法将上载到服务器功能上,但是我正努力从服务器下载。

我已成功从服务器接收文件,但是我不知道如何将其下载为文件或在新选项卡中打开(最好)。

所以在前端,我有一个Link带有onClick元素来发送请求:

<Link
  onClick={(e) => {
    handleDownloadInvoice(e, invoice.scannedFileName);
  }}
  href={``}
>

和反应中的处理功能:

const handleDownloadInvoice = async (e, fileName) => {
  e.preventDefault();

  const invoiceFile = await axios.get(`http://localhost:3000/api/v1/invoice/getfile/${fileName}`, {
    headers: { "x-access-token": localStorage.getItem("token") },
  });

  console.log(invoiceFile);
};

从服务器:

const getScannedFile = async (req, res) => {
  const { fileName } = req.params;

  res.contentType("application/pdf").sendFile(__basedir + `\\uploadedFiles\\invoices\\${fileName}`);
};

因此,记录invoiceFile的数据具有字符串形式,并且具有正确的header: {content-type: "application/pdf" }

问题是,如何将数据字符串转换回pdf文件(最好在选项卡中打开)或作为文件下载到客户端计算机?

山姆

这是链接,可以提供帮助

https://medium.com/@storrisi/how-to-show-a-pdf-stream-on-a-react-client-without-any-library-36220fee60cb

axios(`${apiURL}/pdf`, {
    method: 'GET',
    responseType: 'blob' //Force to receive data in a Blob Format
})
.then(response => {
//Create a Blob from the PDF Stream
    const file = new Blob(
      [response.data], 
      {type: 'application/pdf'});
//Build a URL from the file
    const fileURL = URL.createObjectURL(file);
//Open the URL on new Window
    window.open(fileURL);
})
.catch(error => {
    console.log(error);
});

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

使用jQuery在新选项卡中打开PDF文件

来自分类Dev

在新选项卡中打开 .pdf 文件

来自分类Dev

如何在 Ruby on Rails ActiveAdmin 的新选项卡中打开 CSV、PDF 下载链接?

来自分类Dev

从文件中读取URL并在Firefox选项卡中将其打开

来自分类Dev

在选项卡中一次打开多个文件并在Vim中拆分

来自分类Dev

JSON文件在新选项卡中打开(我要下载)

来自分类Dev

我有一个网站,用户可以在其中自动下载 pdf 文件,不应在新选项卡中打开

来自分类Dev

在AngularJS中,如何使用ng-click在iPad浏览器的新选项卡中打开下载pdf

来自分类Dev

如何在单独的选项卡中打开文件

来自分类Dev

Atom在相同(或不同)选项卡中随机打开文件

来自分类Dev

在Vim中从新的空白选项卡打开文件

来自分类Dev

如何在单独的选项卡中打开文件

来自分类Dev

vim在选项卡中打开几个最近的文件

来自分类Dev

在“ jEdit”中以“选项卡”而不是“下拉列表”打开文件

来自分类Dev

您可以在React JS应用程序的新选项卡中显示PDF文件吗

来自分类Dev

python selenium在新选项卡中打开链接,并在新选项卡中继续会话

来自分类Dev

如何将servlet重定向到新选项卡并在新选项卡中打开Excel

来自分类Dev

PDF417条码扫描的换行导致Chrome打开下载选项卡

来自分类Dev

量角器按钮单击并在新选项卡中打开页面

来自分类Dev

如何单击Element()并在同一选项卡中而不是在新窗口中打开链接?

来自分类Dev

XMLHttpRequest POST并在新窗口/选项卡中打开目标页面

来自分类Dev

打开一个选项卡,并在Firefox插件中对其发出POST请求

来自分类Dev

XMLHttpRequest POST并在新窗口/选项卡中打开目标页面

来自分类Dev

记事本++,运行命令并在新选项卡中打开输出

来自分类Dev

bootstrap-typeahead.js v2.3.2从建议的选项选择选项并在新选项卡中打开

来自分类Dev

在Notepad ++(最后打开的选项卡)中打开的文件的路径在哪里存储?

来自分类Dev

如何在 Vim 中打开多个终端选项卡并打开文件并更改目录?

来自分类Dev

在PDF中创建链接以在新窗口/选项卡中打开

来自分类Dev

Unite.vim-如何从文件浏览器中的选项卡中打开文件

Related 相关文章

  1. 1

    使用jQuery在新选项卡中打开PDF文件

  2. 2

    在新选项卡中打开 .pdf 文件

  3. 3

    如何在 Ruby on Rails ActiveAdmin 的新选项卡中打开 CSV、PDF 下载链接?

  4. 4

    从文件中读取URL并在Firefox选项卡中将其打开

  5. 5

    在选项卡中一次打开多个文件并在Vim中拆分

  6. 6

    JSON文件在新选项卡中打开(我要下载)

  7. 7

    我有一个网站,用户可以在其中自动下载 pdf 文件,不应在新选项卡中打开

  8. 8

    在AngularJS中,如何使用ng-click在iPad浏览器的新选项卡中打开下载pdf

  9. 9

    如何在单独的选项卡中打开文件

  10. 10

    Atom在相同(或不同)选项卡中随机打开文件

  11. 11

    在Vim中从新的空白选项卡打开文件

  12. 12

    如何在单独的选项卡中打开文件

  13. 13

    vim在选项卡中打开几个最近的文件

  14. 14

    在“ jEdit”中以“选项卡”而不是“下拉列表”打开文件

  15. 15

    您可以在React JS应用程序的新选项卡中显示PDF文件吗

  16. 16

    python selenium在新选项卡中打开链接,并在新选项卡中继续会话

  17. 17

    如何将servlet重定向到新选项卡并在新选项卡中打开Excel

  18. 18

    PDF417条码扫描的换行导致Chrome打开下载选项卡

  19. 19

    量角器按钮单击并在新选项卡中打开页面

  20. 20

    如何单击Element()并在同一选项卡中而不是在新窗口中打开链接?

  21. 21

    XMLHttpRequest POST并在新窗口/选项卡中打开目标页面

  22. 22

    打开一个选项卡,并在Firefox插件中对其发出POST请求

  23. 23

    XMLHttpRequest POST并在新窗口/选项卡中打开目标页面

  24. 24

    记事本++,运行命令并在新选项卡中打开输出

  25. 25

    bootstrap-typeahead.js v2.3.2从建议的选项选择选项并在新选项卡中打开

  26. 26

    在Notepad ++(最后打开的选项卡)中打开的文件的路径在哪里存储?

  27. 27

    如何在 Vim 中打开多个终端选项卡并打开文件并更改目录?

  28. 28

    在PDF中创建链接以在新窗口/选项卡中打开

  29. 29

    Unite.vim-如何从文件浏览器中的选项卡中打开文件

热门标签

归档