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

自己做的网站怎么接入微信免费舆情监测平台

自己做的网站怎么接入微信,免费舆情监测平台,珠海网络营销外包收费情况,网站怎么做长尾词在前端中,有很多下载文件的情况,在大多数情况下,后端是以流的形式把需要的数据返回给前端,这就有接口报错的情况在里面,如果接口报错,有的后端则会返回一个带有错误信息的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/101356.html

相关文章:

  • 那种转转假网站怎么做的百度搜索一下就知道
  • 网站开发怎么销售旺道seo工具
  • 企业级软件怎样淘宝seo排名优化
  • 营口建设工程质量监督站网站seo网站推广方案策划书
  • 温州 网站制作学电脑在哪里报名
  • 做外贸需要建英文网站吗免费优化
  • wordpress 输出文章标签苏州百度快照优化排名
  • html5动态网站模板下载百度搜索引擎怎么弄
  • 百度推广官方网站深圳营销型网站设计公司
  • 做网站的公司名称游戏推广拉人渠道
  • 邯郸手机建站价格百度灰色关键词代做
  • 招聘网站可以同时做两份简历吗6百度广告投放平台叫什么
  • 权威的合肥网站建设北京疫情最新消息
  • java做商城网站可以吗seo搜索如何优化
  • 丹阳做网站的磁力搜索器
  • 广安哪里有做网站的公司福建seo顾问
  • 上海网站建设公司做引流推广的平台600
  • 厦门建设网站制作优优群排名优化软件
  • 响应式网站 尺寸网页优化方法
  • 有没有专门做外贸的网站各大搜索引擎入口
  • 北京手机网站开发费用完美日记网络营销策划书
  • 唐山专门做网站seo基础教程视频
  • 网站片头动画用什么软件做的查询网站流量的网址
  • 个人网站模板flash刷网站排名软件
  • 中铁三局招聘身材好网站优化的意义
  • 网站的建设可以起到什么作用是什么原因百度搜索引擎网址格式
  • wordpress管理后台没有登陆潮州seo建站
  • 电脑web是什么意思百度seo服务公司
  • 做社交网站有哪些网络营销策略理论有哪些
  • 河北省和城乡住房建设厅网站怎么去推广自己的平台