ตัวสร้างโค้ดดาวน์โหลดไฟล์ด้วย JavaScript

สร้างโค้ดสำหรับฝั่งหน้าเว็บเบราว์เซอร์และฝั่งเซิร์ฟเวอร์ Node.js

async function downloadFile(url, filename) {
  const res = await fetch(url);
  const blob = await res.blob();
  const a = document.createElement('a');
  a.href = URL.createObjectURL(blob);
  a.download = filename;
  a.click();
}

การดาวน์โหลดไฟล์ทำงานอย่างไรใน JavaScript?

บนเบราว์เซอร์ Fetch API จะแปลงข้อมูลการตอบกลับเป็นอ็อบเจ็กต์ Blob จากนั้นสร้างองค์ประกอบ <a download> เสมือนเพื่อสั่งให้เริ่มการดาวน์โหลด