Axios
Axios 是一个基于Promise的HTTP客户端,用于在浏览器和node.js环境中发送HTTP请求。它提供了一种简单而直观的方式来进行网络请求,并且支持多种请求方法,如 GET、POST、PUT、DELETE 等。
Axios 的特点:
支持Promise API,使得异步操作更加简洁。
支持请求和响应拦截。
支持转换请求和响应数据。
客户端支持防止CSRF攻击。
提供了并发请求的接口。
Axios 使用示例:
import axios from 'axios';// 发起GET请求axios.get('/user?ID=12345').then(function (response) {// 处理成功情况console.log(response.data);}).catch(function (error) {// 处理错误情况console.log(error);}).then(function () {// 总是会执行});// 发起POST请求axios.post('/user', { name: '新用户', age: 28 }).then(function (response) {console.log(response.data);}).catch(function (error) {console.log(error);});
Await
await 是 ES2017 引入的一个关键字,它用于等待一个异步操作的结果。await 只能在 async 函数内部使用。
Await 的使用:
await 关键字可以使得异步代码的编写方式更接近同步代码,使得代码更易于阅读和维护。
Await 使用示例:
async function getUserInfo() {try {// 等待axios的GET请求响应const response = await axios.get('/user?ID=12345');console.log(response.data); // 处理响应数据// 可以继续等待其他异步操作const anotherResponse = await axios.post('/user', { name: '新用户', age: 28 });console.log(anotherResponse.data);} catch (error) {// 处理错误console.log(error);}}// 调用异步函数getUserInfo();
在上述示例中,await 关键字使得我们能够等待 axios.get 和 axios.post 的结果,而不需要使用 .then() 和 .catch() 链式调用。这使得异步代码的流程控制和错误处理更加直观和简洁。
