首页 前端知识 vue的 blob文件下载文件时,后端自定义异常,并返回json错误提示信息,前端捕获信息并展示给用户

vue的 blob文件下载文件时,后端自定义异常,并返回json错误提示信息,前端捕获信息并展示给用户

2024-08-08 23:08:25 前端知识 前端哥 803 375 我要收藏

1.后端返回的json数据结构为:

{"message":"下载失败,下载文件不存在,请联系管理员处理!","code":500}

2.vue 请求后台接口返回的 Blob数据

 3.问题出现的原因是,正常其他数据列表接口,返回的 请求头部  直接为 json ,有附件的  则为   blob,所以得特殊处理下

4.解决方案,(注意:就是它: response.config.responseType=='blob')

import Vue from 'vue'
import axios from 'axios'
 
const service=axios.create({
    baseUrl:xxxxx,
    timeout:3600000
})
 
//response interceptor
service.interceptors.response.use(response)=>{
   if(response.status==200 &&b response.config.responseType=='blob'){
     if(response.data.size==0 || response.headers['content-type'].includes('json'){
        let data=response.data
        let fileReader=new FileReader()
        fileReader.readAsText(data)
        fileReader.onload=function(result){
            let jsondata=JSON.parse(result.target.result)
            notification.error({message:'提示', description: jsondata.message})
        }
        return Promise.reject(response)
     }
     return response
  }else{
     return response.data
  }
},error)

转载请注明出处或者链接地址:https://www.qianduange.cn//article/15110.html
标签
评论
发布的文章

Jquery (第三章笔记)

2024-08-18 00:08:37

jquery实现tab切换简单好用

2024-08-18 00:08:35

jQuery Cookie 插件使用教程

2024-08-14 22:08:01

jQuery的DOM操作

2024-08-18 00:08:21

echarts显示中国地图

2024-08-18 00:08:11

大家推荐的文章
会员中心 联系我 留言建议 回顶部
复制成功!