如何使用Node.js下载.gz文件而不使用任何第三方库
我只想从URL下载.gz文件并将其保存在文件夹中。如果可能的话,我想在没有任何第三方库的情况下这样做。这是我到目前为止所做的,但它只下载一个空文件:
const fs = require('fs')
const https = require('https')
let file = fs.createWriteStream('./folder/filename.gz')
let request = https.get('https://someurl/somefile.gz', function(res) {
res.pipe(file)
})
回答如下:
你可以试试这个,使用HTTP module作为nodesJS,它看起来类似于下载任何其他文件,只需记住在调用instead
时提及下载文件的扩展名....这是一个例子:
注意:如果您尝试从HTTPS链接下载,请使用HTTPS module,它完全相同,但只需使用
HTTP
替换以下代码中的所有HTTPS
const http = require('http');
const fs = require('fs');
//I added './' assuming that you want to download it where the server
//file is located, just change it to your desired path, followed by the
//filename and the EXTENSION
const file = fs.createWriteStream("./result.tar.gz");
const request = http.get("http://alpha.gnu/gnu/gzip/gzip-1.3.6.tar.gz", (response) => {
response.pipe(file);
});