国产 无码 综合区,色欲AV无码国产永久播放,无码天堂亚洲国产AV,国产日韩欧美女同一区二区

前端實現(xiàn)文件下載功能——文件流

這篇具有很好參考價值的文章主要介紹了前端實現(xiàn)文件下載功能——文件流。希望對大家有所幫助。如果存在錯誤或未考慮完全的地方,請大家不吝賜教,您也可以點擊"舉報違法"按鈕提交疑問。

前端下載文件一般使用的是blob

核心的步驟是獲取后端響應(yīng)的文件流,用blob創(chuàng)建一個臨時的URL,然后創(chuàng)建一個隱藏的<a>標簽,實現(xiàn)下載需求。

那就先上代碼

function download(item) {
    axios.get(getServerUrl() + "/teacher/output/" + classId.value + "/" + item, {
        responseType: 'blob', // 告訴瀏覽器響應(yīng)類型是 Blob
    }).then((response) => {
        let blob = new Blob([response.data]);
        // 創(chuàng)建一個臨時 URL,用于下載
        const url = URL.createObjectURL(blob);
        let fileName = item + '簽到統(tǒng)計表.xls';
        const a = document.createElement('a');
        a.setAttribute('href', url);
        a.setAttribute('download', fileName);
        document.body.appendChild(a);
        a.click();
        document.body.removeChild(a);
        // 釋放臨時 URL
        URL.revokeObjectURL(url);
    })
}

如果后端響應(yīng)的數(shù)據(jù)是一個二進制數(shù)據(jù),那我們就得這是響應(yīng)類型是blob,否則瀏覽器會默認按照json解析

至于后端如何向前端以文件流的形式發(fā)送文件,請看我的上一個隨筆Java后端向前端返回文件流——實現(xiàn)下載功能

是否會有朋友有個疑問,前端要不要在new BLob里面設(shè)置content-type,答案是不需要,其實你會發(fā)現(xiàn)設(shè)置與不設(shè)置效果一樣,但如果后端沒有設(shè)置,那么文件下載就會出問題。我之前在寫一個web項目要實現(xiàn)一個下載功能,一直以為要前端規(guī)定格式,結(jié)果后端就沒有設(shè)置,導致下載的文件格式錯誤。

所以說,只要后端的文件流正確,響應(yīng)類型設(shè)置正確,前端只需要將responseType設(shè)置為blob即可。文章來源地址http://www.zghlxwxcb.cn/news/detail-678185.html

到了這里,關(guān)于前端實現(xiàn)文件下載功能——文件流的文章就介紹完了。如果您還想了解更多內(nèi)容,請在右上角搜索TOY模板網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關(guān)文章,希望大家以后多多支持TOY模板網(wǎng)!

本文來自互聯(lián)網(wǎng)用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務(wù),不擁有所有權(quán),不承擔相關(guān)法律責任。如若轉(zhuǎn)載,請注明出處: 如若內(nèi)容造成侵權(quán)/違法違規(guī)/事實不符,請點擊違法舉報進行投訴反饋,一經(jīng)查實,立即刪除!

領(lǐng)支付寶紅包贊助服務(wù)器費用

相關(guān)文章

  • Java后端向前端返回文件流——實現(xiàn)下載功能!

    Java后端向前端返回文件流——實現(xiàn)下載功能!

    前端實現(xiàn)文件下載功能有多種方法,這里就不一一介紹,這里只介紹使用文件流下載的實現(xiàn)方法。 既然是文件流那就肯定需要給前端返回一堆二進制編碼,作為后端就可以返回一個 OutPutStream 后端可以使用Java中servlet提供的 HttpServletResponse ,核心步驟是要設(shè)置響應(yīng)的數(shù)據(jù)類型

    2024年02月08日
    瀏覽(28)
  • Vue3 - 詳細實現(xiàn)下載從服務(wù)端返回的文件流 Blob 對象教程,前端下載后端接口返回的文件流并自動保存到本地,支持任何格式的文件下載(從后端拿到二進制文件流 Blob 對象,前端實現(xiàn)點擊下載功能)

    Vue3 - 詳細實現(xiàn)下載從服務(wù)端返回的文件流 Blob 對象教程,前端下載后端接口返回的文件流并自動保存到本地,支持任何格式的文件下載(從后端拿到二進制文件流 Blob 對象,前端實現(xiàn)點擊下載功能)

    調(diào)用服務(wù)端(后端)接口拿到文件流,通過前端下載并保存到本地。 本文 實現(xiàn)了在 vue3 項目中,通過后端接口返回的二進制文件流 Blob 對象,在前端進行點擊下載并保存到用戶本地,任何格式的文件都可以輕松下載, 保證您直接復(fù)制代碼,改個請求地址就可以使用了, 如下

    2024年02月04日
    瀏覽(174)
  • SpringBoot整合hdfs,實現(xiàn)文件上傳下載刪除與批量刪除,以及vue前端發(fā)送請求,實現(xiàn)前后端交互功能;

    SpringBoot整合hdfs,實現(xiàn)文件上傳下載刪除與批量刪除,以及vue前端發(fā)送請求,實現(xiàn)前后端交互功能;

    部分工具類代碼參考文章:https://blog.csdn.net/qq_27242695/article/details/119683823 前端實現(xiàn)效果 HDFSController HDFS FileInterface (文件接口) HDFS FileImplService (文件接口實現(xiàn)類) HDFSConfig(從yaml讀取文件) HDFSUTils 前端vue代碼:

    2024年02月16日
    瀏覽(130)
  • axios下載csv文件下載-功能實現(xiàn)

    axios下載csv文件下載-功能實現(xiàn)

    須將axios 配置中的 responseType 設(shè)置為 arraybuffer ?

    2024年02月05日
    瀏覽(16)
  • 前端實現(xiàn)下載文件(包含壓縮包下載)方式匯總

    默認最簡單的下載方式是: window.open(后臺接口API路徑) ,但該方法弊端:因是新開窗口方式,前端展示上,每次會閃下。 此外,如果使用window.open(文件URL)方式: pdf、office文檔、psd:直接下載。 圖片、txt:新開窗口預(yù)覽,不會下載;且txt預(yù)覽,有時出現(xiàn)中文亂碼問題。 一、

    2024年02月10日
    瀏覽(19)
  • 【Java實戰(zhàn)】Feign調(diào)用文件下載服務(wù)接口實現(xiàn)文件下載功能

    最近需要實現(xiàn)Feign調(diào)用服務(wù)提供者的文件下載接口,進行文件下載功能,這里對功能的實現(xiàn)做一個簡單的記錄 通過調(diào)用服務(wù)提供者的文件下載接口,將文件傳輸?shù)牧鲾?shù)據(jù)通過 feign.Response 來接收,服務(wù)消費者再將數(shù)據(jù)轉(zhuǎn)化 首先,在項目中引入Feign的依賴。你可以使用Maven進行管

    2024年02月12日
    瀏覽(126)
  • 【Java 實現(xiàn)文件下載】vue前端+java后端實現(xiàn)文件下載詳解(附源碼)

    【Java 實現(xiàn)文件下載】vue前端+java后端實現(xiàn)文件下載詳解(附源碼)

    【 寫在前面 】前端時間總結(jié)了一下有關(guān)java文件上傳的功能,也給不少讀者帶來一些幫助,因此今天繼續(xù)完善文件下載這套體系,希望能給屏幕前的您帶來實質(zhì)性的幫助,其實文件下載最怕的就是中文亂碼的現(xiàn)象,當然這個我單獨寫了一篇文章解釋,這里不做詳談。 涉及知識

    2024年02月09日
    瀏覽(106)
  • ajax實現(xiàn)下載文件功能

    最近在做下載功能,因為后端需要生成PDF并上傳到云服務(wù)器,只返回文件的URL,所以百度了很多找到了一個簡單的方法. Blob(Binary Large Object)表示二進制類型的大對象。在數(shù)據(jù)庫管理系統(tǒng)中,將二進制數(shù)據(jù)存儲為一個單一個體的集合。Blob 通常是影像、聲音或多媒體文件。在 Ja

    2024年02月15日
    瀏覽(20)
  • 前端實現(xiàn)下載文件的方法匯總

    對于前端來說,下載文件是一個特別常見的需求。但是前端要根據(jù)后端返回的內(nèi)容,來選擇下載文件的具體方法。通常情況下,后端要么給你 返回文件的網(wǎng)絡(luò)地址 ,要么 返回文件流 。返回地址一般用在靜態(tài)文件上,比如圖片和音視頻資源等;返回文件流一般用在動態(tài)文件上

    2024年02月09日
    瀏覽(25)
  • 前端實現(xiàn)下載文件的各種方式

    前端實現(xiàn)下載文件的各種方式

    前端涉及到的文件下載還是很多應(yīng)用場景的,那么前端文件下載有多少種方式呢?每種方式有什么優(yōu)缺點呢?下面就來一一介紹。 通過 a 標簽的 download 屬性來實現(xiàn)文件下載,這種方式是最簡單的,也是我們比較常用的方式,先來看示例代碼: 就上面的這個示例,我們點擊下

    2024年02月16日
    瀏覽(21)

覺得文章有用就打賞一下文章作者

支付寶掃一掃打賞

博客贊助

微信掃一掃打賞

請作者喝杯咖啡吧~博客贊助

支付寶掃一掃領(lǐng)取紅包,優(yōu)惠每天領(lǐng)

二維碼1

領(lǐng)取紅包

二維碼2

領(lǐng)紅包