How do I download a file with Node.js without using third-party libraries?
I don’t need anything special. I only want to download a file from a given URL, and then save it to a given directory.
30 s
You can create an HTTP GET
request and pipe its response
into a writable file stream:
const http = require('http'); // or 'https' for https:// URLs
const fs = require('fs');
const file = fs.createWriteStream("file.jpg");
const request = http.get("http://i3.ytimg.com/vi/J---aiyznGQ/mqdefault.jpg", function(response) {
response.pipe(file);
// after download completed close filestream
file.on("finish", () => {
file.close();
console.log("Download Completed");
});
});
If you want to support gathering information on the command line–like specifying a target file or directory, or URL–check out something like Commander.
More detailed explanation in https://sebhastian.com/nodejs-download-file/