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

Vue實(shí)戰(zhàn)【后端返回文件流時(shí),前端如何處理并成功下載流文件】

這篇具有很好參考價(jià)值的文章主要介紹了Vue實(shí)戰(zhàn)【后端返回文件流時(shí),前端如何處理并成功下載流文件】。希望對(duì)大家有所幫助。如果存在錯(cuò)誤或未考慮完全的地方,請(qǐng)大家不吝賜教,您也可以點(diǎn)擊"舉報(bào)違法"按鈕提交疑問。


Vue實(shí)戰(zhàn)【后端返回文件流時(shí),前端如何處理并成功下載流文件】

??前言

哈嘍小伙伴們,在我們?nèi)粘9ぷ鳟?dāng)中,大家一定會(huì)遇到 文件導(dǎo)出 這樣的功能需求點(diǎn);導(dǎo)出功能前端后端都可以實(shí)現(xiàn),通常情況下呢是由我們后端同事去處理的,那么當(dāng)我們后端同事給你返回文件流的時(shí)候,前端要怎么處理并且完成下載呢?今天就給大家說個(gè)簡(jiǎn)單的方法,我們一起來看下吧??

??文件和流的關(guān)系

文件(File)和流(Stream)是既有區(qū)別又有聯(lián)系的兩個(gè)概念。

  • 文件 是計(jì)算機(jī)管理數(shù)據(jù)的基本單位,同時(shí)也是應(yīng)用程序保存和讀取數(shù)據(jù)的一個(gè)重要場(chǎng)所。
    • 存儲(chǔ)介質(zhì):文件是指在各種存儲(chǔ)介質(zhì)上(如硬盤、可移動(dòng)磁盤、CD等)永久存儲(chǔ)的數(shù)據(jù)的有序集合,它是進(jìn)行數(shù)據(jù)讀寫操作的基本對(duì)象。
    • 特性:每個(gè)文件都有文件名、文件所在路徑、創(chuàng)建時(shí)間及訪問僅限等屬性。
  • 是字節(jié)序列的抽象概念,例如文件、輸入/輸出設(shè)備、內(nèi)部進(jìn)程通信管道等。流提供一種向后備存儲(chǔ)器寫入字節(jié)和從后備存儲(chǔ)器讀取字節(jié)的方式。
    • 存儲(chǔ)介質(zhì):除了和磁盤文件直接相關(guān)的文件流以外,流還有多種類型。流可以分布在網(wǎng)絡(luò)中、內(nèi)存中或者是磁帶中。

??后端返回來的流是什么樣子的

這里用一張圖片來說明一下

Vue實(shí)戰(zhàn)【后端返回文件流時(shí),前端如何處理并成功下載流文件】
如上圖,紅色框內(nèi),類似于亂碼的,就是文件流在瀏覽器中的表現(xiàn)方式

??前端處理文件流并且成功下載

這里以Vue為主實(shí)現(xiàn)

在導(dǎo)出接口文件里寫入:

import request from '@/utils/request';

// 車輛運(yùn)行分析導(dǎo)出
export function exportCarRunAnalyse(data) {
    return request({
        responseType: 'blob', // 重點(diǎn),responseType設(shè)置為 blob
        url: '/statistics/exportCarRunAnalyse',
        method: 'post',
        data
    });
}

調(diào)取該接口的頁面里寫入:

// data 為 向后臺(tái)傳遞的參數(shù),大家自行定義
            exportCarRunAnalyse(data).then(res => {
                console.log(res); // 控制臺(tái)輸出:Blob {size: 30208, type: 'application/x-msdownload'}
                var debug = res;
                if (debug) {
                    var elink = document.createElement('a');
                    elink.download = '導(dǎo)出表格.xls';
                    elink.style.display = 'none';
                    var blob = new Blob([debug], { type: 'application/x-msdownload' });
                    elink.href = URL.createObjectURL(blob);
                    document.body.appendChild(elink);
                    elink.click();
                    document.body.removeChild(elink);
                } else {
                    this.$message.error('導(dǎo)出異常請(qǐng)聯(lián)系管理員');
                }
            }).catch(err => {
                console.log(err);
            });

這時(shí)再去點(diǎn)擊導(dǎo)出,即可將 文件流 下載為文件
Vue實(shí)戰(zhàn)【后端返回文件流時(shí),前端如何處理并成功下載流文件】

??結(jié)語

方法有好多,這只是其中的一種,也歡迎大家補(bǔ)存,共同學(xué)習(xí)。各位小伙伴讓我們 let’s be prepared at all times!

?原創(chuàng)不易,還希望各位大佬支持一下!
?? 點(diǎn)贊,你的認(rèn)可是我創(chuàng)作的動(dòng)力!
?? 收藏,你的青睞是我努力的方向!
?? 評(píng)論,你的意見是我進(jìn)步的財(cái)富!文章來源地址http://www.zghlxwxcb.cn/news/detail-500898.html

到了這里,關(guān)于Vue實(shí)戰(zhàn)【后端返回文件流時(shí),前端如何處理并成功下載流文件】的文章就介紹完了。如果您還想了解更多內(nèi)容,請(qǐng)?jiān)谟疑辖撬阉鱐OY模板網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關(guān)文章,希望大家以后多多支持TOY模板網(wǎng)!

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

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

相關(guān)文章

  • vue 后端返回二進(jìn)制流-前端通過blob對(duì)象下載文件-圖片

    前言 在實(shí)際開發(fā)中我們經(jīng)常會(huì)遇見下載文件的場(chǎng)景,比如下載合同,下載文件 下載文件有2種方式,一種是后端返回二進(jìn)制流,前端通過blob對(duì)象接受根據(jù)不同類型下載 還有一種把地址直接在瀏覽器新窗口打開瀏覽器打開pdf可以預(yù)覽和下載,其他文件直接下載 但不管是那種方

    2024年02月05日
    瀏覽(25)
  • 【vue2】前端實(shí)現(xiàn)下載后端返回的application/octet-stream文件流

    1、下載csv/txt時(shí) 此時(shí)無須修改接口的響應(yīng)格式 2、下載Excel時(shí),需要修改一下接口的響應(yīng)格式為blob 另

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

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

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

    2024年02月04日
    瀏覽(174)
  • 后端返回文件流,前端怎么導(dǎo)出、下載

    后端返回文件流,前端怎么導(dǎo)出、下載

    ? ? ? ? 工作中肯定有很多導(dǎo)出excel、下載文件這種功能。一般都是后端做好,我們?nèi)フ?qǐng)求對(duì)應(yīng)的接口就行了,前端還需要做一些處理就可以實(shí)現(xiàn)導(dǎo)出、下載功能了。具體怎么操作呢,我們來看看! ? ? ? ? 我們?cè)谡?qǐng)求的時(shí)候 需要定義responseType【響應(yīng)類型】為blob類型,如果

    2024年02月12日
    瀏覽(26)
  • 后端返回base64文件前端如何下載

    后端返回base64文件前端如何下載

    1.后端返回base64格式文件 2.前端代碼 3.請(qǐng)求封裝

    2024年02月05日
    瀏覽(26)
  • 前端處理后端返回的文件流,進(jìn)行文件下載

    前端處理后端返回的文件流,進(jìn)行文件下載

    二進(jìn)制流格式 ?Blob格式 前言: ? ? ? ? 需求:根據(jù)后端接口返回的文件流進(jìn)行數(shù)據(jù)處理,并實(shí)現(xiàn)文件的下載,且下載文件為word文檔. 封裝下載文件接口: 最開始沒帶 responseType:\\\"Blob\\\" ,進(jìn)行文件下載后,里面的內(nèi)容全部是亂碼!??! 代碼實(shí)現(xiàn): ?知識(shí)點(diǎn)補(bǔ)充: ? ? ? ? 1、n

    2024年02月07日
    瀏覽(93)
  • 前端基于axios請(qǐng)求下載文件(后端返回Blob文件流)

    前端基于axios請(qǐng)求下載文件(后端返回Blob文件流)

    前端小白第一篇csdn文章就當(dāng)自己記錄學(xué)習(xí)啦! 我自己遇到的情況寫在前面防止有人和我不一樣,浪費(fèi)時(shí)間瀏覽; 調(diào)用下載接口后端給我返回的數(shù)據(jù)格式(即文件流格式)如下: 1.按鈕定義點(diǎn)擊事件 2.調(diào)用后端接口 在使用 axios 請(qǐng)求下載文件 api 接口時(shí),注意區(qū)分不同請(qǐng)求方法

    2024年02月11日
    瀏覽(97)
  • 圖片上傳流程&前端上傳文件&后端保存文件&并返回圖片地址

    圖片上傳流程&前端上傳文件&后端保存文件&并返回圖片地址

    也是在最近一點(diǎn)時(shí)間寫小demo 遇到的一些問題 比如在用戶界面,用戶選擇本地的一張照片,前端把照片傳到后端,后端怎么把照片保存到服務(wù)器,然后返回給 圖片線上地址。也是找了一些文章,然后分享下。? 技術(shù) 前端:react 后端:egg.js(node框架) base64 轉(zhuǎn)換? 轉(zhuǎn)二進(jìn)制 保存

    2024年02月02日
    瀏覽(23)
  • Java后端向前端返回文件流——實(shí)現(xiàn)下載功能

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

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

    2024年02月11日
    瀏覽(25)
  • Java后端向前端返回文件流——實(shí)現(xiàn)下載功能!

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

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

    2024年02月08日
    瀏覽(28)

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

支付寶掃一掃打賞

博客贊助

微信掃一掃打賞

請(qǐng)作者喝杯咖啡吧~博客贊助

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

二維碼1

領(lǐng)取紅包

二維碼2

領(lǐng)紅包