Heim > Web-Frontend > js-Tutorial > Hauptteil

Wie kann ich eine Datei mithilfe der clientseitigen Abruf-API herunterladen?

Patricia Arquette
Freigeben: 2024-10-23 07:28:29
Original
916 Leute haben es durchsucht

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

So laden Sie eine Datei mit clientseitigem Abruf herunter

Bei der Entwicklung einer Web- oder Mobilanwendung müssen Sie möglicherweise Dateien von einem herunterladen Remote-Server auf das Gerät des Benutzers. Mit der Einführung der Fetch-API ist das Herunterladen von Dateien auf der Clientseite viel einfacher geworden.

Bedenken Sie den folgenden Codeausschnitt:

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

In diesem Szenario haben Sie eine Fetch-Anfrage definiert, der eine Datei von Google Drive abruft. Es stellt sich die Frage: Was sollten Sie im Then-Block tun, um die Datei herunterzuladen?

Im Folgenden wird ein saubererer und effizienterer Ansatz zum Herunterladen von Dateien gezeigt, bei dem die Fetch-API verwendet wird, ohne auf zusätzliche Bibliotheken angewiesen zu sein.

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

Dieses Code-Snippet initialisiert eine Abrufanforderung mit der entsprechenden URL und dem Autorisierungsheader. Anschließend verwendet es die Methode res.blob(), um die Binärdaten der Datei abzurufen. Anschließend wird eine temporäre Objekt-URL für die Datei erstellt und der window.location zugewiesen, um den Download auszulösen.

Das obige ist der detaillierte Inhalt vonWie kann ich eine Datei mithilfe der clientseitigen Abruf-API herunterladen?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Quelle:php
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
Über uns Haftungsausschluss Sitemap
Chinesische PHP-Website:Online-PHP-Schulung für das Gemeinwohl,Helfen Sie PHP-Lernenden, sich schnell weiterzuentwickeln!