簡體   English   中英

使用 axios vuejs 下載時 Excel 文件損壞

[英]Excel file corrupted on download with axios vuejs

我正在嘗試下載一個excel文件。 我已經使用 axios 了。

我試過下面的代碼

     axios.post(backendURL + 'api/client?file_name='+file_name,params, {
        file_name: file_name
    }, {
        responseType: 'blob'
    }).then((response) => {
        const url = URL.createObjectURL(new Blob([response.data], {
            type: 'application/vnd.ms-excel'
        }))
        const link = document.createElement('a')
        link.href = url
        link.setAttribute('download', file_name)
        document.body.appendChild(link)
        link.click()
    });

我收到錯誤消息“Excel 無法打開文件“filename.xlsx”,因為文件格式或文件擴展名無效。請驗證文件是否已損壞,並且文件擴展名是否與文件格式匹配”

我已經嘗試了我在谷歌找到的所有解決方案,但沒有任何效果。 請幫忙

  downloadFile() {
            axios({
                url: this.scenario.file,  //.substring(0, this.scenario.file.lastIndexOf("/"))
                method: "GET",
                headers: {"Accept": "application/vnd.ms-excel"},
                responseType: "blob"
            }).then(response => {
                const fileURL = window.URL.createObjectURL(new Blob([response.data]));
                const fileLink = document.createElement("a");

                fileLink.href = fileURL;
                fileLink.setAttribute("download", "file.xlsx");
                document.body.appendChild(fileLink);

                fileLink.click();
            });
        },

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM