如何实现axios不走请求拦截器
整体流程
首先我们需要了解整个流程,下面是一个简单的表格展示了 axios 请求拦截器的流程:
步骤 | 描述 |
---|---|
1 | 创建一个 axios 实例 |
2 | 添加请求拦截器 |
3 | 发起请求 |
4 | 请求被拦截器拦截 |
5 | 跳过请求拦截器 |
6 | 发起请求 |
每一步需要做什么
- 创建一个 axios 实例
const axios = require('axios');
const instance = axios.create();
- 添加请求拦截器
instance.interceptors.request.use(function (config) {
// 在发送请求之前做些什么
return config;
}, function (error) {
// 对请求错误做些什么
return Promise.reject(error);
});
- 发起请求
instance.get('/api/user/12345')
.then(function (response) {
console.log(response);
})
.catch(function (error) {
console.log(error);
});
- 请求被拦截器拦截
拦截器会在发送请求之前对请求进行处理,如果希望某些请求不走拦截器,可以通过以下方式实现:
const config = {
// 在这里添加需要跳过拦截器的配置
skipInterceptors: true
};
instance.get('/api/user/12345', config)
.then(function (response) {
console.log(response);
})
.catch(function (error) {
console.log(error);
});
- 跳过请求拦截器
当发送请求时,如果配置中包含 skipInterceptors: true
,则请求会跳过拦截器,直接发送到服务器。
- 发起请求
instance.get('/api/user/12345', {
skipInterceptors: true
})
.then(function (response) {
console.log(response);
})
.catch(function (error) {
console.log(error);
});
通过以上步骤,就可以实现 axios 不走请求拦截器的功能。希望对你有所帮助!
关系图
erDiagram
Request --|> Interceptors
Interceptors --|> Request
通过以上方法,你就可以成功的实现 axios 不走请求拦截器了。祝你编程愉快!