nodejs 实现axiox拦截器代码实现
时间: 2023-10-24 17:21:16 浏览: 108
以下是Node.js中实现axios拦截器的代码示例:
```javascript
const axios = require('axios');
axios.interceptors.request.use(
config => {
// 在请求发送之前做些什么
console.log('请求拦截器触发:', config);
return config;
},
error => {
// 对请求错误做些什么
console.error('请求拦截器出错:', error);
return Promise.reject(error);
}
);
axios.interceptors.response.use(
response => {
// 对响应数据做些什么
console.log('响应拦截器触发:', response);
return response;
},
error => {
// 对响应错误做些什么
console.error('响应拦截器出错:', error);
return Promise.reject(error);
}
);
// 示例:发送一个 GET 请求
axios.get('https://jsonplaceholder.typicode.com/todos/1')
.then(response => {
console.log('响应结果:', response.data);
})
.catch(error => {
console.error('请求出错:', error);
});
```
在上面的代码中,我们使用了`axios.interceptors.request.use`和`axios.interceptors.response.use`方法对请求和响应进行拦截。
在请求拦截器中,我们可以对请求的配置进行修改或添加一些自定义的参数,例如添加一个认证头部,打印请求的配置等等。
在响应拦截器中,我们可以对响应数据进行处理,例如对返回的数据进行格式化,打印响应的数据等等。
当我们发送一个请求时,axios会自动触发请求拦截器,然后发送请求。当服务器返回响应时,axios会自动触发响应拦截器。在拦截器中,我们可以根据需要对请求和响应进行处理。
阅读全文