axios.interceptors
时间: 2023-09-02 09:12:53 浏览: 115
Ajax-vue-axios-interceptors.zip
axios.interceptors是axios库中的拦截器功能。拦截器允许我们在请求或响应被处理前对它们进行拦截和处理。可以分为请求拦截器和响应拦截器。
1. 请求拦截器:在发送请求之前可以对请求进行处理,例如添加请求头、设置token等。可以使用axios.interceptors.request.use方法来配置请求拦截器。
2. 响应拦截器:在接收到响应后可以对响应进行处理,例如对返回的数据进行处理、统一处理错误等。可以使用axios.interceptors.response.use方法来配置响应拦截器。
一个案例中的配置示例可以是:
```javascript
const service = axios.create({
baseURL: 'http://127.0.0.1:8080',
timeout: 6000
})
service.interceptors.request.use(
config => {
const token = sessionStorage.getItem('token')
if (token) {
config.headers['token'] = token
}
return config
},
error => {
return Promise.reject(error)
}
)
service.interceptors.response.use(
response => {
// 对响应进行处理
return response
},
error => {
// 处理请求错误
return Promise.reject(error)
}
)
```
以上代码示例中,我们创建了一个axios实例对象service,并通过service.interceptors.request.use和service.interceptors.response.use来分别配置了请求拦截器和响应拦截器。在请求拦截器中,我们可以获取存取的token,并将其添加到请求头中;在响应拦截器中,我们可以对响应进行处理,并处理请求错误。
综上所述,axios.interceptors提供了拦截器功能,可以在请求或响应被处理前对它们进行拦截和处理。<span class="em">1</span><span class="em">2</span><span class="em">3</span>
#### 引用[.reference_title]
- *1* *2* [Axios.Interceptors(拦截器)](https://blog.csdn.net/m0_63057114/article/details/129743503)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v93^chatsearchT3_1"}}] [.reference_item style="max-width: 50%"]
- *3* [axios的拦截请求与响应方法](https://download.csdn.net/download/weixin_38732315/13606325)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v93^chatsearchT3_1"}}] [.reference_item style="max-width: 50%"]
[ .reference_list ]
阅读全文