axios 拦截器原理
时间: 2023-07-04 13:17:59 浏览: 120
axios基础理解(小部分)
Axios 拦截器是一种在请求发送和响应返回之前,对请求和响应进行处理的机制。Axios 拦截器可以用于添加请求头、验证请求数据、对响应数据进行处理等场景。
Axios 的拦截器是基于 Promise 实现的,每个拦截器都是一个 Promise,其 resolve 函数接收一个 config 对象或 response 对象作为参数。Axios 支持两种类型的拦截器:请求拦截器和响应拦截器。
请求拦截器会在请求发送之前执行,响应拦截器会在响应返回之后执行。请求拦截器可以用于添加请求头、验证请求数据等操作,响应拦截器可以用于对响应数据进行处理。
Axios 的拦截器原理可以简单概括为:
1. 创建一个 Axios 实例,并设置默认配置。
2. 将请求和响应拦截器添加到实例中。
3. 当发送请求时,按照顺序执行请求拦截器中的代码。
4. 如果请求拦截器中发生了错误,Promise.reject() 方法会直接返回错误信息。
5. 如果请求拦截器中没有发生错误,Axios 会将最终的请求参数发送给服务器。
6. 当服务器返回响应时,Axios 会按照顺序执行响应拦截器中的代码。
7. 如果响应拦截器中发生了错误,Promise.reject() 方法会返回错误信息。
8. 如果响应拦截器中没有发生错误,Axios 会将最终的响应结果返回给调用者。
总之,Axios 拦截器的原理就是在请求和响应之间插入一些处理代码,以实现对请求和响应的自定义处理。
阅读全文