Axios 返回错误的处理

官方链接 : 错误处理

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
axios.get("/user/12345").catch(function (error) {
if (error.response) {
// 请求成功发出且服务器也响应了状态码,但状态代码超出了 2xx 的范围
console.log(error.response.data);
console.log(error.response.status);
console.log(error.response.headers);
} else if (error.request) {
// 请求已经成功发起,但没有收到响应
// `error.request` 在浏览器中是 XMLHttpRequest 的实例
// 而在node.js中是 http.ClientRequest 的实例
console.log(error.request);
} else {
// 发送请求时出了点问题
console.log("Error", error.message);
}
console.log(error.config);
});

无网络

无 response 返回

1
2
3
4
5
6
{
"message": "Network Error",
"name": "Error",
"stack": "Error: Network Error...",
"config": { // ... }
}

请求超时

无 response 返回

1
2
3
4
5
6
7
{
"message": "timeout of 2000ms exceeded",
"name": "Error",
"stack": "Error: timeout of 2000ms exceeded...",
"config": { // ... },
"code": "ECONNABORTED"
}

返回错误码

返回 response

1
2
3
4
5
6
{
"message": "Request failed with status code 401",
"name": "Error",
"stack": "Error: Request failed with status code 401...",
"config": { ... }
}

response 数据

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
{
"data": "Unauthorized Jwt.",
"status": 401,
"statusText": "Unauthorized",
"headers": {
"cache-control": "no-cache, private",
"content-type": "text/html; charset=UTF-8"
},
"config": {
...
},
"request": {
...
}
}

对于 config 中的结构格式查看 请求配置


语雀镜像 : Axios 返回错误的处理 ,点此 提问

Axios 返回错误的处理

https://wulicode.com/web/gsavc9.html

作者

Duoli

发布于

2022-09-30

更新于

2022-09-30

许可协议

评论