// 拦截响应回来的数据,通过判断success值到底是true还是false,如果是true,res.data.data -> data 如果false -> 直接到catch
// 响应拦截器
request.interceptors.response.use(response => {
// axios默认加了一层data
const { success, message, data } = response.data
// 要根据success的成功与否决定下面的操作
if (success) {
return data
} else {
// 业务已经错误了 还能进then ? 不能 ! 应该进catch
Message.error(message) // 提示错误消息
return Promise.reject(new Error(message))// 返回是一个只会失败的promise 到catch
}
}, error => {
Message.error(error.message) // 提示错误信息
return Promise.reject(error) // 返回执行错误 让当前的执行链跳出成功 直接进入 catch
})
export default request
响应拦截器
于 2022-05-18 10:17:08 首次发布