- 背景:请求后端视频流
- 问题:http请求成功,状态码200,但是后端返回
{
code:400,
message: "id错误!"
}
这个时候打印data, 结果是 Blob {size: 61, type: ‘application/json’
const params = {
video_id: $route.query.id,
};
const { data } = await axios.get("/video/get_video", {
responseType: "blob", // 关键参数
params,
});
解决:因为错误的类型比较少,所以直接通过data.size判断
if (data.size == 61) {
ElMessage.error("id错误!");
} else {
// 后续操作
}
反思:感觉这种处理方式只能临时用一下,并不合适。