我想在html页面上单击按钮时下载pdf文件.html页面部署在nodejs上.pdf文件位于apache http服务器上。因此html页面和nodejs服务器位于同一域中,但是html页面和apache http服务器是跨域的。我可以这样吗?当我单击按钮时,我向nodejs发送一个请求,然后nodejs从apache http服务器获取文件,然后向客户端(浏览器)发送响应。如果pdf文件很大,我可以等到nodejs将其移交给客户之后再发送响应。我只是想实现这一目标,就像<a href="xxx" download="yyy">Download<a>
可以实现这个目标一样下载此文件?
是的,你可以这么做。Browser -> Node.JS Server -> Http Server -> Node.JS Server -> Browser
使用请求模块,您可以在req和res之间流式传输文件。https://www.npmjs.com/package/request#streaming
例子:
http.createServer(function (req, resp) {
if (req.url === '/doodle.png') {
r.get('http://google.com/doodle.png').pipe(resp)
}
}).listen(port);
本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
我来说两句