• Blob 对象 下载文件时 type 类型 大全,及下载方法封装


    Blob 对象 下载文件时 type 类型 大全,及下载方法封装

    参考文章1 - Blob 下载文件时 type 类型 大全 @派大星 1
    参考文章2 - new Blob下载文件流,并根据文件后缀动态匹配blob的type @王新新 2255

    注意: 获取文件流的接口,需要配置 responseType: 'blob',

    示例代码

      onePageExport: (params) => {
        return post({
          url: `base/url/test`,
          responseType: 'blob',
          params
        })
      },
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7

    方法封装:

     fileHandle(data, fileName) {
          let blob = new Blob([data], { type: 'application/pdf' })
          let url = window.URL.createObjectURL(blob)
          const link = document.createElement('a') // 创建a标签
          link.href = url
          link.download = fileName // 重命名文件
          link.click()
          URL.revokeObjectURL(url) // 释放内存
        },
    
    // 文件名称获取
    
    let { headers } = res
    let filename = headers['content-disposition']
    filename = decodeURIComponent(filename.split(';')[1].split('=')[1])
    
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    • 9
    • 10
    • 11
    • 12
    • 13
    • 14
    • 15
    • 16
    aacAAC audioaudio/aac
    .abwAbiWord documentapplication/x-abiword
    .arcArchive document (multiple files embedded)application/x-freearc
    .aviAVI: Audio Video Interleavevideo/x-msvideo
    .azwAmazon Kindle eBook formatapplication/vnd.amazon.ebook
    .binAny kind of binary dataapplication/octet-stream
    .bmpWindows OS/2 Bitmap Graphicsimage/bmp
    .bzBZip archiveapplication/x-bzip
    .bz2BZip2 archiveapplication/x-bzip2
    .cshC-Shell scriptapplication/x-csh
    .cssCascading Style Sheets (CSS)text/css
    .csvComma-separated values (CSV)text/csv
    .docMicrosoft Wordapplication/msword
    .docxMicrosoft Word (OpenXML)application/vnd.openxmlformats-officedocument.wordprocessingml.document
    .eotMS Embedded OpenType fontsapplication/vnd.ms-fontobject
    .epubElectronic publication (EPUB)application/epub+zip
    .gifGraphics Interchange Format (GIF)image/gif
    .htm.htmlHyperText Markup Language (HTML)text/html
    .icoIcon formatimage/vnd.microsoft.icon
    .icsiCalendar formattext/calendar
    .jarJava Archive (JAR)application/java-archive
    .jpeg .jpgJPEG imagesimage/jpeg
    .jsJavaScripttext/javascript
    .jsonJSON formatapplication/json
    .jsonldJSON-LD formatapplication/ld+json
    .mid .midiMusical Instrument Digital Interface (MIDI)audio/midi audio/x-midi
    .mjsJavaScript moduletext/javascript
    .mp3MP3 audioaudio/mpeg
    .mpegMPEG Videovideo/mpeg
    .mpkgApple Installer Packageapplication/vnd.apple.installer+xml
    .odpOpenDocument presentation documentapplication/vnd.oasis.opendocument.presentation
    .odsOpenDocument spreadsheet documentapplication/vnd.oasis.opendocument.spreadsheet
    .odtOpenDocument text documentapplication/vnd.oasis.opendocument.text
    .ogaOGG audioaudio/ogg
    .ogvOGG videovideo/ogg
    .ogxOGGapplication/ogg
    .otfOpenType fontfont/otf
    .pngPortable Network Graphicsimage/png
    .pdfAdobe Portable Document Format (PDF)application/pdf
    .pptMicrosoft PowerPointapplication/vnd.ms-powerpoint
    .pptxMicrosoft PowerPoint (OpenXML)application/vnd.openxmlformats-officedocument.presentationml.presentation
    .rarRAR archiveapplication/x-rar-compressed
    .rtfRich Text Format (RTF)application/rtf
    .shBourne shell scriptapplication/x-sh
    .svgScalable Vector Graphics (SVG)image/svg+xml
    .swfSmall web format (SWF) or Adobe Flash documentapplication/x-shockwave-flash
    .tarTape Archive (TAR)application/x-tar
    .tif.tiffTagged Image File Format (TIFF)image/tiff
    .ttfTrueType Fontfont/ttf
    .txtText, (generally ASCII or ISO 8859-n)text/plain
    .vsdMicrosoft Visioapplication/vnd.visio
    .wavWaveform Audio Formataudio/wav
    .webaWEBM audioaudio/webm
    .webmWEBM videovideo/webm
    .webpWEBP imageimage/webp
    .woffWeb Open Font Format (WOFF)font/woff
    .woff2Web Open Font Format (WOFF)font/woff2
    .xhtmlXHTMLapplication/xhtml+xml
    .xlsMicrosoft Excelapplication/vnd.ms-excel
    .xlsxMicrosoft Excel (OpenXML)application/vnd.openxmlformats-officedocument.spreadsheetml.sheet
    .xmlXMLapplication/xml 代码对普通用户来说不可读 (RFC 3023, section 3) text/xml 代码对普通用户来说可读 (RFC 3023, section 3)
    .xulXULapplication/vnd.mozilla.xul+xml
    .zipZIP archiveapplication/zip
    .3gp3GPP audio/video containervideo/3gpp audio/3gpp(若不含视频)
    .3g23GPP2 audio/video containervideo/3gpp2 audio/3gpp2(若不含视频)
    .7z7-zip archiveapplication/x-7z-compressed
  • 相关阅读:
    五年制专转本备考中如何进行有效的自我管理
    【C++项目】手动实现一个定长内存池(了解内存分配机制、定长内存提高效率 附源码)
    dreamweaver作业静态HTML网页设计 大学美食菜谱网页制作教程(web前端网页制作课作业)
    kubeadm安装kubernetes
    c++面试八股文
    Vue 下载本地文件夹和图片动态引入(解决无法从网站上提取文件)
    java 枚举ENUM
    LLM(二)| LIMA:在1k高质量数据上微调LLaMA1-65B,性能超越ChatGPT
    【Python爬虫三天从0到1】Day1:爬虫核心
    STM8的C语言编程(1)--基本程序与启动代码分析
  • 原文地址:https://blog.csdn.net/i_Satan/article/details/132898678