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

怎么做盗版小说网站“跨年”等关键词搜索达年内峰值

怎么做盗版小说网站,“跨年”等关键词搜索达年内峰值,做添加剂的外贸网站有哪些,国际网站建设公司目录 前言: 采坑之路 总结: 前言: 近日,项目中踩了一个坑分享一下经验,也避免下次遇到方便解决。项目基于vue2axioselement-ui,业务中导出按钮需要直接下载接口中的文件流。正常是没有问题,但…

目录

前言:

采坑之路

总结:


前言:

近日,项目中踩了一个坑分享一下经验,也避免下次遇到方便解决。项目基于vue2+axios+element-ui,业务中导出按钮需要直接下载接口中的文件流。正常是没有问题,但是测试确测出来参数正确时,后端接口没有返回文件流,而是报错提示。返回结果集如图:

采坑之路

1.正常接口返回result里就直接输出message,然后显示错误提示就好了。

问题是我们用的axios中post请求的,responseType:"blob"类型设置死了,接收的只有文件流相关信息,打印了res,没有后端的返回错误码:

这就尴尬了,原逻辑不管数据是不是都该返回一个二进制文件流的内容来下载,即使是个空文件是吧。但是遇到这个错误提示,就得解决啊。

2.寻求网上方法,最终填坑完成,分享一下这个完整解法:

 this.axios.post('/zzh/afterSale/exportAfterSaleMaintainForm', JSON.stringify(data), {responseType: 'blob',headers: {'Content-Type': 'application/json;charset=utf8','Authorization': this.$store.state.user.token,'Language': this.lan,},}).then(function (res) {// responseType: 'blob' 这个类型获取报错提示if(res.data.success===undefined && res.data.type === 'application/json'){const fileReader = new FileReader()fileReader.readAsText(res.data,'utf-8')fileReader.onload = function(){const result = JSON.parse(fileReader.result)_this.$message.error(_this.$t('errorCode.' + result.code)); // 业务中拼接报错提示}return}const content = res.dataconst blob = new Blob([content], {type: "application/octet-stream"}) //构造一个blob对象来处理数据const encodeFileName = res.headers['content-disposition'].split(';')[1].split('=')[1];const fileName = decodeURIComponent(encodeFileName);if ('download' in document.createElement('a')) { //支持a标签download的浏览器const link = document.createElement('a') //创建a标签link.download = fileName //a标签添加属性link.style.display = 'none'link.href = URL.createObjectURL(blob)document.body.appendChild(link)link.click() //执行下载URL.revokeObjectURL(link.href) //释放urldocument.body.removeChild(link) //释放标签} else { //其他浏览器navigator.msSaveBlob(blob, fileName)}})

总结:

1.首先遇到responseType:"blob"这个类型时,考虑报错提示,需要把返回的数据转成文件读取错误提示;其中重要的是new FileReader()的使用。

2.文件下载的方法,组装成二进制流文件,注意获取content-disposition中文件名,否则下载的文件会是损坏的!其中重要的是 new Blob()的使用,创建对象A标签,模拟点击下载文件。

以上就是今天的分享,欢迎关注我,点赞评论!~

http://www.bdqn1.cn/news/367.html

相关文章:

  • 如何做wordpress主题seo网络推广培训班
  • 手机网站预约表单宁阳网站seo推广
  • 移动宽带到期续费流程沈阳seo搜索引擎
  • 做外贸网站基本流程免费的网站推广在线推广
  • 免费做流程图的网站湖南seo排名
  • wordpress教程 全套黑帽seo培训大神
  • 衢州网站建设近期国内新闻热点事件
  • 1688网站怎样做推广app优化排名
  • php做学校网站免费下载seo排名优化工具
  • 苏州做网站套路骗有哪些网站可以免费发布广告
  • 广州网站到首页排名seo在线优化排名
  • 网站设计风格介绍网址大全下载
  • 做名片最好的网站关键词整站优化
  • 做境外域名网站免费软件下载网站有哪些
  • html自我介绍代码河北seo
  • 蚌埠网站制作公司站长工具 seo综合查询
  • 做网站的收钱不管了重庆网站建设与制作
  • 用小程序做视频网站代刷网站推广链接免费
  • 衢州建筑地基加固信息流优化师培训机构
  • 怎么建自己的手机网站吗代写企业软文
  • 北京公司如何做网站廊坊百度关键词优化怎么做
  • 整站seo免费咨询百度怎么精准搜关键词
  • 网站平台建设包括哪些福州seo网络推广
  • 网站编程需要什么语言台州百度关键词排名
  • 可以拔下来做的网站吗网站内容seo
  • 专做纸巾批发网站大数据网站
  • 东莞网站推广热线电话傻瓜式自助建站系统
  • 二级域名网站有哪些辽阳网站seo
  • 二级域名可以做网站吗企业网络营销顾问
  • 天津城乡建设委员会网站自媒体平台有哪些