如何回显responseType为blob或者arraybuffer的错误提示信息

在axios里面全局处理

           if (error.request.responseType === 'blob') {
              try {
                const text = await error.response.data.text();
                const errorData = JSON.parse(text);
                errorInfo.message = errorData.message || '请求失败';
              } catch (e) {
                errorInfo.message = '数据请求失败,请稍后再试';
              }
            } else if (error.request.responseType === 'arraybuffer') {
              try {
                const decoder = new TextDecoder('utf-8'); // 或者 'gbk' 等其他编码
                const text = decoder.decode(new Uint8Array(error.response.data));
                const errorData = JSON.parse(text);
                errorInfo.message = errorData.message || '请求失败';
              } catch (e) {
                errorInfo.message = '数据请求失败,请稍后再试';
              }
            }

 

posted @ 2025-06-29 18:16  wjs0509  阅读(65)  评论(0)    收藏  举报