node(express)实现文件的下载

前端之家收集整理的这篇文章主要介绍了node(express)实现文件的下载前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。

每次都在使用a标签的download属性来下载文件,突然想,如果要借助服务端又如何主动请求文件的下载呢?

一、纯前端方式

只要给对了路径,就可以完全脱离后端,使用a标签的download属性下载。

二、服务端配合

这儿使用express来做服务端,用express不用node主要是因为省去路由配置的问题,只关注于下载方面。

app.get('/test',(req,res) => {
    res.set({
        "Content-Type":"application/octet-stream",//告诉浏览器这是一个二进制文件
        "Content-Disposition":"attachment; filename=1.txt"//告诉浏览器这是一个需要下载的文件
    });
    fs.createReadStream('./public/file/test.txt').pipe(res);
});

输入http://127.0.0.1:端口/test就可以下载了。

猜你在找的Node.js相关文章