Datei-Download in Node.js ohne externe Bibliotheken
Das Herunterladen von Dateien in Node.js kann nativ erfolgen, ohne auf externe Bibliotheken angewiesen zu sein. So geht's:
Verwendung der integrierten Fetch-API (Knoten 18)
Knoten 18 führt den globalen Fetch ein, der die Fetch-API implementiert. Diese API bietet Methoden zum Herunterladen von Daten, einschließlich Text-, JSON- und Binärdaten. Zum Beispiel:
const fetch = require('node-fetch'); const url = 'http://example.com/file.jpg'; const response = await fetch(url); const buffer = await response.arrayBuffer(); fs.writeFileSync('filename.jpg', Buffer.from(buffer));
Verwendung von HTTP-GET-Anfragen (ältere Knotenversionen)
Vor Knoten 18 können Sie eine HTTP-GET-Anfrage erstellen und deren Antwort weiterleiten ein Dateistream:
const http = require('http'); const fs = require('fs'); const file = fs.createWriteStream('file.jpg'); const url = 'http://i3.ytimg.com/vi/J---aiyznGQ/mqdefault.jpg'; const request = http.get(url, (response) => { response.pipe(file); }); // Close file stream after download completes file.on('finish', () => { file.close(); console.log('Download completed'); });
Befehlszeile konfigurieren Optionen
Wenn Sie Befehlszeilenoptionen wie die Angabe einer Zieldatei oder URL benötigen, können Sie ein Paket wie Commander zur Anpassung verwenden:
const program = require('commander'); program .option('-o, --output <file>', 'Output file name') .option('-u, --url <url>', 'URL to download from') .parse(process.argv); const file = fs.createWriteStream(program.output || 'default.jpg'); const request = http.get(program.url, (response) => { response.pipe(file); });
Für detailliertere Informationen und Alternative Ansätze finden Sie in der folgenden Ressource: https://sebhastian.com/nodejs-download-file/
Das obige ist der detaillierte Inhalt vonWie kann ich Dateien in Node.js herunterladen, ohne externe Bibliotheken zu verwenden?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!