当前位置: 首页 > wzjs >正文

深圳响应式网站公司百度推广登录手机版

深圳响应式网站公司,百度推广登录手机版,建筑人网站,青岛城市建设集团网站vue下载文件 (blob文件流) 及 下载失败报错信息处理 重点封装代码 // 引入axios import axios from axios // 引入token的获取方法 import { getToken } from /utils/auth // 引入消息提示组件 import { Message } from element-ui// 导出文件--文件流格式 export function e…

vue下载文件 (blob文件流) 及 下载失败报错信息处理

重点封装代码

// 引入axios
import axios from 'axios'
// 引入token的获取方法
import { getToken } from '@/utils/auth'
// 引入消息提示组件
import { Message } from 'element-ui'// 导出文件--文件流格式
export function exportFlie(url, params) {axios.post(process.env.VUE_APP_BASE_API + `${url}`, params, { responseType: 'blob', headers: { 'X-Token': getToken() }}).then((res) => {//返回文件流,下载保存到本地const blob = new Blob([res.data], {type: 'application/vnd.openxmlformats-officedocument.spreadsheetml.sheet;charset=utf-8'})const downloadElement = document.createElement('a')const href = window.URL.createObjectURL(blob)// 获取headers中返回的文件名const contentDisposition = res.headers['content-disposition'] // 从response的headers中获取filename, 后端response.setHeader("Content-disposition", "attachment; filename=xxxx.docx") 设置的文件名;const patt = new RegExp('filename="([^;]+\\.[^\\.;]+);*"')const result = patt.exec(contentDisposition)const filename = decodeURI(result[1])downloadElement.style.display = 'none'downloadElement.href = hrefdownloadElement.download = filename // 下载后文件名document.body.appendChild(downloadElement)downloadElement.click() // 点击下载document.body.removeChild(downloadElement) // 下载完成移除元素window.URL.revokeObjectURL(href) // 释放掉blob对象}).catch(err => {// 接口报错,返回保存信息,因为设置responseType: 'blob',返回数据转为blob格式,所以使用FileReader()方法读取文件流,将错误信息转为json格式const reader = new FileReader()reader.readAsText(err.response.data, 'utf-8')reader.onload = (e) => {try {// 将读取到的文本解析为JSON对象const jsonData = JSON.parse(e.target.result)// 在这里使用解析后的JSON数据Message.error(jsonData.msg)} catch (error) {// 处理解析JSON时可能出现的错误console.error('Error parsing JSON:', error)Message.error('文件导出失败')}}})
}

封装公共方法

  1. utils文件下的index.js文件中创建工具类
export function exportFlie(){}

组件中使用

import { exportFlie } from '@/utils/index'exportFlie(url, params)
http://www.dtcms.com/wzjs/36311.html

相关文章:

  • 表格可以做网站么个人网站怎么做
  • 内蒙古建设安全监督网站建站模板网站
  • 大连网站建设蛇皮果网络营销方案ppt
  • 做网站公司上海seo排名点击首页
  • 上海高端建设网站什么是电商
  • 搭建网站的工具网络舆情管控
  • 临沂企业建站模板外链网盘
  • 南沙网站建设价格网络推广app是违法的吗
  • 阿里云做网站可以吗沪深300指数基金排名
  • 成都学校网站建设企业百度新闻app
  • 电子商务网站建设 臧良运 好不好网站优化推广软件
  • 网站运维公司有哪些优化网哪个牌子好
  • 山西网站建设方案公司百度搜索趋势
  • 做多肽的都有哪些网站运营seo是什么意思
  • wordpress链接在哪里seo网站优化方案
  • 工程造价建设信息网站培训心得
  • 建网站的公司 快云推广活动策划方案范文
  • 河南省专业做网站公司晋中网络推广
  • 枣庄做网站制作自己的网页
  • 网站建设 选中企动力dw网站制作
  • 网站的建设与运维谷歌站长平台
  • django 开放api 做网站seo搜索引擎优化方式
  • 上海建设交通委员会网站刷僵尸粉网站推广
  • 北京企业网站建设方今日的最新新闻
  • 做网站需要哪些东西南宁哪里有seo推广厂家
  • 谁帮58同城做的网站吗seo服务外包客服
  • 网站开发需要学习什么技术百度无广告搜索引擎
  • 上海市建设交通委员会网站sku电商是什么意思
  • wordpress 大站点免费制作网站app
  • seo是什么职位的缩写北京网站优化培训