通常遇到此问题是因为 Axios 没有正确处理响应,可以检查以下几个方面:
确保返回的数据是 JSON 格式,而不是其他格式,如 HTML 或纯文本。可以使用 response.data 打印响应数据,查看是否为 JSON 格式。如果不是 JSON 格式,可以尝试修改后端 API 的返回值格式。
确保后端 API 返回的状态码正确。Axios 默认只会处理状态码为 2XX 的响应,如果 API 返回的状态码不是 2XX,可以通过 response.status 查看响应状态码,并根据需要进行相应的处理。
下面是一个示例代码,演示如何正确处理 Axios 的响应:
axios.get('/api/data')
.then(response => {
if (response.status === 200 && response.data) {
console.log(response.data);
} else {
console.log('响应状态码为' + response.status + ',无法获取数据');
}
})
.catch(error => {
console.error('请求数据时出现错误:', error);
});