• 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
  • 相关阅读:
    安科瑞精密配电多回路监控装置在轨道交通项目上的应用
    Reids存储邮箱验证码
    视野修炼-技术周刊第53期
    离群点检测和新颖性检测
    特征缩放是强制性的吗? 什么时候使用标准化? 什么时候使用归一化?数据的分布会发生什么变化?对异常值有什么影响?模型的准确性会提高吗?
    Scala---元组
    Create a new window with NSWindow
    java.io.IOException: Unable to establish loopback connection
    operator=中自我赋值和异常安全问题
    java内存泄漏和内存溢出oom排查思路
  • 原文地址:https://blog.csdn.net/i_Satan/article/details/132898678