Heim > Web-Frontend > js-Tutorial > Wie kann ich Dateien in Node.js herunterladen, ohne externe Bibliotheken zu verwenden?

Wie kann ich Dateien in Node.js herunterladen, ohne externe Bibliotheken zu verwenden?

Linda Hamilton
Freigeben: 2024-12-13 09:16:14
Original
707 Leute haben es durchsucht

How Can I Download Files in Node.js Without Using External Libraries?

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));
Nach dem Login kopieren

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');
});
Nach dem Login kopieren

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);
});
Nach dem Login kopieren

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!

Quelle:php.cn
Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn
Neueste Artikel des Autors
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage