JAVA配合Freemark模板生成word返回文件流,前台vue接收下载

2021/9/6 9:07:04

本文主要是介绍JAVA配合Freemark模板生成word返回文件流,前台vue接收下载,对大家解决编程问题具有一定的参考价值,需要的程序猿们随着小编来一起学习吧!

直接上vue的代码:

	let sendData = {}
    let successCallBack = (resp) => {
      if (resp.status !== 200) {
        this.$message.error('文件下载失败')
        return false
      }
      // ********************* 接收文件流 ***********************
      let blob = new Blob([resp.data], {
        // type   mimi类型  可以百度详细类型
        // word文档为msword,application/pdfpdf文档为pdf  application/vnd.ms-excel
        // image/jpeg jpg
        //  type: `msword`
        type: `application/msword`
      })
      let objectUrl = URL.createObjectURL(blob)
      let link = document.createElement('a')
      let fName = decodeURI(resp.headers['content-disposition'].split('=')[1])
      link.href = objectUrl
      link.setAttribute('download', fName)
      document.body.appendChild(link)
      link.click()
    }
    // this.$request.xxx()  是因为我将axios重新进行了封装
    this.$Request.getFiles({
      data: sendData,
      responseType: 'blob',	// **********这里的响应类型必须设置为'blob'
      success: successCallBack,
      requestDataType: 'form-data'
    })
  }

更详细的请参考:https://blog.csdn.net/CarryBest/article/details/102586653



这篇关于JAVA配合Freemark模板生成word返回文件流,前台vue接收下载的文章就介绍到这儿,希望我们推荐的文章对大家有所帮助,也希望大家多多支持为之网!


扫一扫关注最新编程教程