Maison  >  Article  >  interface Web  >  Comment télécharger des fichiers avec window.fetch() dans les applications côté client ?

Comment télécharger des fichiers avec window.fetch() dans les applications côté client ?

DDD
DDDoriginal
2024-10-23 07:27:30614parcourir

How to Download Files with window.fetch() in Client-Side Applications?

Téléchargement de fichiers avec Window.fetch() dans les applications côté client

Lors du traitement des téléchargements de fichiers côté client, window.fetch () fournit un outil puissant pour gérer ces opérations. Cependant, la question se pose : que faut-il faire dans le bloc then pour télécharger un fichier ?

Solution :

À l'intérieur du bloc then, la réponse doit être traitée pour récupérer le contenu du fichier. Voici une solution plus concise et efficace qui utilise l'API fetch sans avoir besoin de bibliothèques externes :

<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 => {
    const file = window.URL.createObjectURL(blob);
    window.location.assign(file);
  });</code>

Dans ce code, la requête est effectuée avec l'en-tête d'authentification approprié. La réponse est ensuite convertie en un blob, qui représente les données binaires du fichier. Enfin, en utilisant window.URL.createObjectURL(), une URL est générée pour le blob et window.location.assign() est utilisée pour télécharger le fichier.

En suivant cette approche, les développeurs peuvent télécharger sans effort fichiers provenant de serveurs distants utilisant window.fetch() dans leurs applications côté client.

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn