Maison > Questions et réponses > le corps du texte
handleDownload()
Une fonction est ajoutée en tant que gestionnaire d'événements (onclick) au bouton afin que l'utilisateur puisse télécharger le fichier. L'utilisateur peut télécharger mais le fichier est corrompu. Comment pouvons-nous empêcher la corruption des fichiers ?
function handleDownload(){ const domain = window.location.origin; const url =`${domain}/images/athar.pdf` fetch(url). then(response=>response.blob()). then(blob=>{ const blobURL= window.URL.createObjectURL( new Blob([blob])) const filename = 'athar.pdf' const aTag = document.createElement('a') aTag.href=blobURL aTag.setAttribute('download',filename) document.body.appendChild(aTag) aTag.click() aTag.remove() }). catch(e=>console.log(e)) }
P粉3843669232023-09-11 00:42:43
Puisque vous avez déjà reçu la réponse en tant que Blob, il n'est pas nécessaire de la convertir à nouveau en Blob, alors essayez de supprimer cette partie.
Essayez de remplacer :
const blobURL= window.URL.createObjectURL( new Blob([blob]))
J'aime ça :
const blobURL= window.URL.createObjectURL(blob);