Bagaimanakah Saya Boleh Muat Turun Fail Menggunakan API Pengambilan Sebelah Klien?

Patricia Arquette
Lepaskan: 2024-10-23 07:28:29
asal
916 orang telah melayarinya

How Can I Download a File Using the Client-Side Fetch API?

Cara Muat Turun Fail Menggunakan Client-Side Fetch

Apabila membangunkan aplikasi web atau mudah alih, anda mungkin perlu memuat turun fail daripada pelayan jauh ke peranti pengguna. Dengan pengenalan API Ambil, memuat turun fail pada bahagian klien menjadi lebih mudah.

Pertimbangkan coretan kod berikut:

<code class="javascript">function downloadFile(token, fileId) {
  let url = `https://www.googleapis.com/drive/v2/files/${fileId}?alt=media`;
  return fetch(url, {
    method: 'GET',
    headers: {
      'Authorization': token
    }
  }).then(...);
}</code>
Salin selepas log masuk

Dalam senario ini, anda mempunyai permintaan Ambil ditakrifkan yang mendapatkan semula fail daripada Google Drive. Timbul persoalan: apakah yang perlu anda lakukan dalam blok kemudian untuk memuat turun fail?

Pendekatan yang lebih bersih dan cekap untuk memuat turun fail ditunjukkan di bawah, menggunakan API Ambil tanpa bergantung pada perpustakaan tambahan.

<code class="javascript">const url = 'http://sample.example.file.doc';
const authHeader = "Bearer 6Q************"; 

const options = {
  headers: {
    Authorization: authHeader
  }
};
fetch(url, options)
  .then(res => res.blob())
  .then(blob => {
    var file = window.URL.createObjectURL(blob);
    window.location.assign(file);
  });</code>
Salin selepas log masuk

Coretan kod ini memulakan permintaan Ambil dengan URL yang sesuai dan pengepala kebenaran. Ia kemudian menggunakan kaedah res.blob() untuk mendapatkan semula data binari fail. Selepas itu, ia mencipta URL objek sementara untuk fail dan menyerahkannya kepada window.location untuk mencetuskan muat turun.

Atas ialah kandungan terperinci Bagaimanakah Saya Boleh Muat Turun Fail Menggunakan API Pengambilan Sebelah Klien?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

sumber:php
Kenyataan Laman Web ini
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn
Artikel terbaru oleh pengarang
Tutorial Popular
Lagi>
Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan
Tentang kita Penafian Sitemap
Laman web PHP Cina:Latihan PHP dalam talian kebajikan awam,Bantu pelajar PHP berkembang dengan cepat!