可能出现网络原始响应与 Axios response.data 返回的数据不同的情况。这可能是因为 Axios 对返回的数据进行了自动解析而导致格式发生改变。为了避免这种情况,我们可以使用 Axios 的响应拦截器,手动解析数据并返回原始响应。
在 Axios 中使用响应拦截器:
axios.interceptors.response.use(
response => {
// 手动解析数据,返回原始响应
return {
data: response.data,
status: response.status,
headers: response.headers,
config: response.config,
request: response.request
};
},
error => {
return Promise.reject(error);
}
);
这样可以确保返回的数据与原始响应相同,而不会被 Axios 自动解析而出现格式变化的情况。