通常情况下,当使用 axios 发送请求时,如果返回的状态码是 4xx 或 5xx,那么会产生错误并触发 catch 结构中的函数。在错误信息中,错误代码和是否出现错误通常会作为错误对象的属性显示。所以,如果出现错误,可以从错误对象中获取错误代码和错误信息。
下面是一个示例代码,该代码演示了如何在请求失败时从错误对象中获取错误信息:
axios.get(url)
.then(response => {
// 处理成功的返回结果
})
.catch(error => {
if (error.response) {
console.log(`请求失败,错误代码:${error.response.status}`);
console.log(`请求失败,错误信息:${error.response.data}`);
} else if (error.request) {
console.log('请求成功,但未收到响应');
} else {
console.log('错误信息:', error.message);
}
console.log(`发生错误:`, error.config);
});
在上面的示例代码中,如果请求失败,首先会判断错误对象中是否存在响应(error.response),如果响应存在,则打印错误代码和错误信息。如果响应不存在但请求已经发送,则打印“请求成功,但未收到响应”;否则显示错误信息和相关的配置对象。