小编use*_*326的帖子

Node.js使用内容处置作为文件名下载文件

我正在使用Request模块下载文件,但是当文件名必须来自'Content-Disposition'标题时,我不太确定如何将响应传递给输出流.基本上,我需要读取响应,直到找到标头,然后将其余部分传递给该文件名.

示例显示如下:

request('http://google.com/doodle.png').pipe(fs.createWriteStream('doodle.png'));

我想去的地方(伪代码):

var req = request('http://example.com/download_latest_version?token=XXX');
var filename = req.response.headers['Content-Disposition'];

req.pipe(fs.createWriteStream(filename));
Run Code Online (Sandbox Code Playgroud)

我可以使用Request回调获取文件名:

request(url, function(err, res, body) {
 // get res headers here
});
Run Code Online (Sandbox Code Playgroud)

但这不会否定使用管道的好处而不是将下载的文件加载到内存中吗?

request node.js

24
推荐指数
2
解决办法
4万
查看次数

标签 统计

node.js ×1

request ×1