Axios与mock冲突导致responseType失效

业务场景

后端写了一个接口返回验证码图片,接口直接返回的是图片二进制流,所以前端准备将其转为blob数据输出,但无论怎么弄二进制流转blob还是失败,查找网上方法是说mock模块与axios冲突了,所以将mock模块删掉即可。

代码

//blob转base64
const transformBlobToBase64 = (blob, callback) => {
    let reader = new FileReader();
 reader.readAsDataURL(blob);
 reader.onload = (e) => {
        callback(e.target?.result);
 };
};


axios.get('/system/captcha', {responseType: 'blob'}).then(res => {
    transformBlobToBase64(res.data, (e) => {
        console.log(res)//此处输出base64图片
    });
})

解决办法

删除package.json中的mockjs模块即可。

你可能感兴趣的:(Axios与mock冲突导致responseType失效)