suchen

Heim  >  Fragen und Antworten  >  Hauptteil

Wie kann ich sicherstellen, dass die Datei nach dem Herunterladen nicht beschädigt ist?

handleDownload() Der Schaltfläche wird eine Funktion als Event-Handler (onclick) hinzugefügt, damit der Benutzer die Datei herunterladen kann. Der Benutzer kann herunterladen, aber die Datei ist beschädigt. Wie verhindern wir Dateibeschädigungen?

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粉135292805P粉135292805450 Tage vor647

Antworte allen(1)Ich werde antworten

  • P粉384366923

    P粉3843669232023-09-11 00:42:43

    由于您已经收到 Blob 形式的响应,因此无需再次将其转换为 Blob,因此请尝试删除该部分。

    尝试替换:

    const blobURL= window.URL.createObjectURL(
        new Blob([blob]))

    这样:

    const blobURL= window.URL.createObjectURL(blob);

    Antwort
    0
  • StornierenAntwort