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

用织梦做的网站ftp怎么登陆网络销售怎么聊客户

用织梦做的网站ftp怎么登陆,网络销售怎么聊客户,建个公司网站需要多少钱,c2c平台网站建设在前端中,有很多下载文件的情况,在大多数情况下,后端是以流的形式把需要的数据返回给前端,这就有接口报错的情况在里面,如果接口报错,有的后端则会返回一个带有错误信息的JSON给我们,比如下面这…

        在前端中,有很多下载文件的情况,在大多数情况下,后端是以流的形式把需要的数据返回给前端,这就有接口报错的情况在里面,如果接口报错,有的后端则会返回一个带有错误信息的JSON给我们,比如下面这样:

{code: "-1",data: null,message:"没有数据导出!"
}

所以我们在封装axios的时候,需要在请求拦截中做一些处理:

service.interceptors.response.use((response) => {if (response.config.responseType === 'blob') {const contentType = response.headers['content-type']// 情况1:收到的是文件流(正常下载)if (contentType.includes('excel')) {// 方式 1:从自定义头获取const filenameFromHeader = response.headers['filename'];// 方式 2:从 Content-Disposition 解析const contentDisposition = response.headers['content-disposition'];const filenameFromCD = contentDisposition?.split('filename=')[1]?.replace(/"/g, '');return {blob: response.data, // 二进制数据filename: decodeURIComponent(filenameFromHeader || filenameFromCD // 从header获取文件名)}}// 情况2:收到的是错误信息(需要转换)return new Promise((resolve, reject) => {const reader = new FileReader()reader.onload = () => {try {const json = JSON.parse(reader.result)if (json.status !== 200) { // 根据你的错误码约定调整reject(json.message || '下载失败')}}catch (e) {console.log('e==>', e);reject('响应解析失败')}}reader.readAsText(response.data)})}return response.data
}, err)

当然,在封装我们的下载方法的时候,也要记得给responseType加上blob

export function functionName(parameter) {return axios({url: '/api/XiaZaiDiZhi',method: 'post',data: parameter,responseType: 'blob'})
}

在调用方法的时候,如果接口报错,返回了JSON,我们就可以直接在catch中获取到报错信息,也可以获取到我们所需要的文件名称

//调用接口
functionName(fromsData).then((data) => {const fileName = data.filename;const url = window.URL.createObjectURL(data.blob);const a = document.createElement("a");a.href = url;a.download = fileName;document.body.appendChild(a);a.click();window.URL.revokeObjectURL(url);}).catch((err) => {this.$message.error(err);});

http://www.dtcms.com/wzjs/269782.html

相关文章:

  • 网站开发所需人员seo入口
  • 网站设计就业怎么样免费顶级域名申请网站
  • 源码网站怎么搭建点击器 百度网盘
  • 邳州网站建设公司网站制作流程
  • 国内高端品牌网站建设百度指数分析
  • seo查询整站南通网站快速收录
  • 做网站花多少钱网站优化推广是什么
  • 那个网站做玉石最专业广州新闻最新消息今天
  • 做外贸一般去什么网站找客户凡科建站手机版登录
  • 嘉兴房产网站建设推广普通话手抄报句子
  • 旅游网站做模板素材长沙seo培训班
  • 河南省工程建设信息网一体化平台太原百度快速优化
  • 网站作品seo名词解释
  • 营销网站制作服务热线世界杯排名
  • 自建商城网站用什么技术好推广普通话图片
  • 电影网站如何做长尾关键词西安网约车平台
  • 网站开发实例pdf百度seo白皮书
  • 如何编辑网站内容深圳有实力的seo公司
  • 县门户网站建设方案什么是淘宝搜索关键词
  • 网站开发工程师考试成都最新动态
  • 淄博机关建设网站免费网站分析seo报告是坑吗
  • 移动网站建设中国万网域名注册服务内容
  • 如何自己建立自己的网站seo公司培训课程
  • 网站开发公司可行报告网页制作培训网站
  • 网站设计制作公司排名爱站网长尾关键词挖掘工具
  • 企业官方网站开发如何入账郑州专业网站建设公司
  • 网站建设实战视频教程网络营销型网站
  • dw做网站表格插不到右边怎么做网站推广多少钱
  • 湖北做网站公司查询网站注册信息
  • 加强政府网站管理建设佛山seo关键词排名