首頁 > web前端 > js教程 > 主體

如何使用客戶端 Fetch API 下載檔案?

Patricia Arquette
發布: 2024-10-23 07:28:29
原創
916 人瀏覽過

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

如何使用客戶端取得下載檔案

開發 Web 或行動應用程式時,您可能需要從遠端伺服器到使用者的裝置。隨著 Fetch API 的引入,在客戶端下載檔案變得更加容易。

考慮以下程式碼片段:

<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>
登入後複製

在這個場景中,您有一個 Fetch 請求定義從 Google Drive 擷取檔案。問題出現了:您應該在 then 區塊中做什麼來下載檔案?

下面示範了更乾淨、更有效率的檔案下載方法,利用 Fetch API 而不依賴其他函式庫。

<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>
登入後複製

此程式碼片段使用適當的 URL 和授權標頭初始化 Fetch 要求。然後,它使用 res.blob() 方法檢索檔案的二進位資料。然後,它為檔案建立一個臨時物件 URL,並將其指派給 window.location 以觸發下載。

以上是如何使用客戶端 Fetch API 下載檔案?的詳細內容。更多資訊請關注PHP中文網其他相關文章!

來源:php
本網站聲明
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn
作者最新文章
熱門教學
更多>
最新下載
更多>
網站特效
網站源碼
網站素材
前端模板
關於我們 免責聲明 Sitemap
PHP中文網:公益線上PHP培訓,幫助PHP學習者快速成長!