邮差可以下载/显示pdf,但浏览器不能



我有一个端点,它解码一个base64 pdf字符串,从中创建一个缓冲区,然后将该缓冲区作为响应发回。我将标题设置为:

Content-Type: application/pdf
Content-Disposition: attachment; filename="<my_filename>.pdf"

当我从邮递员那里点击这个端点时,它会正确地显示/下载pdf(取决于我是发送还是发送并下载(。然而,如果我从我的react应用程序中点击了这个端点,它就不会启动下载。我没有阻止弹出窗口,我正在接收来自请求的缓冲区。

我试着不解码base64字符串,并像一样发回响应

res.status(200).send(`data:application/pdf;base64,${base64String}`);

但这对邮递员和浏览器都不起作用。

我不确定我在这里错过了什么。如果邮递员正确地获得了显示和下载pdf所需的信息,我无法想象我离获得浏览器还有太远的路要走。

当您有base64字符串时,本文可能会帮助您下载文件。

https://stackoverflow.com/a/59578316/17759066

最新更新