axios拦截器实现权限检验
时间: 2023-07-11 11:48:14 浏览: 63
在实现权限检验的过程中,可以使用axios的请求拦截器来添加Authorization请求头,以及响应拦截器来判断响应状态码是否为401或403,并进行相应的处理。
具体实现步骤如下:
1. 在请求拦截器中,添加Authorization请求头。
```javascript
import axios from 'axios';
import { getToken } from './auth'; // 获取token的方法
axios.interceptors.request.use(
config => {
const token = getToken(); // 获取token
if (token) {
config.headers.Authorization = `Bearer ${token}`;
}
return config;
},
error => {
return Promise.reject(error);
}
);
```
2. 在响应拦截器中,判断响应状态码是否为401或403。
```javascript
axios.interceptors.response.use(
response => {
return response;
},
error => {
if (error.response.status === 401 || error.response.status === 403) {
// 处理未授权或权限不足的情况
// 例如跳转到登录页或提示用户无权限访问
}
return Promise.reject(error);
}
);
```
通过以上步骤,我们就可以使用axios拦截器来实现权限检验。在每次发送请求时,会自动添加Authorization请求头,而在接收响应时,会自动判断响应状态码是否为401或403,并进行相应的处理。