问题描述: 什么是 Axios?它的主要特点是什么?
答案: Axios 是一个基于 Promise 的 HTTP 客户端库,用于在浏览器和 Node.js 中发送 HTTP 请求。它具有以下主要特点:
问题描述: 如何在浏览器中使用 Axios 发送 GET 请求?给出一个示例。
答案: 在浏览器中使用 Axios 发送 GET 请求,可以使用 axios.get() 方法。以下是一个示例:
axios.get('/api/users')
.then(response => {
console.log(response.data);
})
.catch(error => {
console.error(error);
});
问题描述: 如何在 Node.js 中使用 Axios 发送 POST 请求?给出一个示例。
答案: 在 Node.js 中使用 Axios 发送 POST 请求,可以使用 axios.post() 方法。以下是一个示例:
axios.post('/api/users', { name: 'Alice', age: 30 })
.then(response => {
console.log(response.data);
})
.catch(error => {
console.error(error);
});
问题描述: 如何在 Axios 中使用拦截器(interceptors)?给出一个示例。
答案: 在 Axios 中使用拦截器可以通过 axios.interceptors 对象来添加请求和响应拦截器。以下是一个示例:
// 添加请求拦截器
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);
});
问题描述: 如何在 Axios 中处理请求和响应的错误?给出一个示例。
答案: 在 Axios 中可以通过 catch 方法来处理请求和响应的错误。以下是一个示例:
axios.get('/api/users')
.then(response => {
console.log(response.data);
})
.catch(error => {
if (error.response) {
// 请求已发出,但服务器返回错误状态码
console.error('响应错误', error.response.data);
} else if (error.request) {
// 请求已发出,但没有收到响应
console.error('没有收到响应', error.request);
} else {
// 其他错误
console.error('发生错误', error.message);
}
});