在axios里面怎么判断响应码的不同设置不同的状态
时间: 2024-05-12 18:20:54 浏览: 50
在axios中可以使用拦截器来处理响应,拦截器可以在发送请求和接收响应时进行拦截操作,可以根据响应码的不同设置不同的状态。以下是一个示例:
```javascript
import axios from 'axios';
// 创建axios实例
const instance = axios.create({
baseURL: 'http://localhost:3000',
timeout: 1000,
});
// 请求拦截器
instance.interceptors.request.use(
config => {
// 在发送请求前做些什么
return config;
},
error => {
// 对请求错误做些什么
return Promise.reject(error);
}
);
// 响应拦截器
instance.interceptors.response.use(
response => {
// 对响应数据做些什么
if (response.status === 200) {
// 如果响应码为200,则返回响应数据
return response.data;
} else if (response.status === 401) {
// 如果响应码为401,则跳转到登录页面
router.replace('/login');
} else {
// 如果响应码为其他,则提示错误信息
alert(response.data.message);
}
},
error => {
// 对响应错误做些什么
return Promise.reject(error);
}
);
// 发送请求
instance.get('/api/users').then(res => {
console.log(res);
});
```
在上面的示例中,我们使用了axios的拦截器来处理响应,如果响应码为200,则返回响应数据;如果响应码为401,则跳转到登录页面;如果响应码为其他,则提示错误信息。
阅读全文