概述
Axios 是一个基于 Promise 的 HTTP 客户端,用于浏览器和 Node.js。它是一个流行的 JavaScript 库,用于在客户端与服务器之间进行 HTTP 请求和响应。
特点
- Promise Based: Axios 基于 Promise,这使得处理异步操作更为方便和清晰。
- 浏览器和 Node.js 支持: Axios 可以在浏览器和 Node.js 环境中使用,这使得它非常灵活,可以在多种应用场景中使用。
- 简单的 API: Axios 提供了一个简洁一致的 API,使得发起 HTTP 请求变得非常容易。
- 拦截器(Interceptors): Axios 允许你定义请求和响应的拦截器,这使得你可以在请求发起或响应返回之前执行一些逻辑。
- 并发请求: Axios 提供了并发请求的支持,可以同时发起多个请求,等待所有请求完成后再处理结果。
- CSRF 保护: Axios 支持在请求中添加 CSRF 头信息,帮助保护应用免受 CSRF 攻击。
- 取消请求: Axios 允许你取消尚未完成的请求,这对于用户在进行导航或其他操作时取消不必要的请求非常有用。
- HTTP 方法别名: Axios 提供了所有标准 HTTP 方法的别名,如
axios.post()
,axios.put()
, 等,使代码更易读。 - 自动转换 JSON: Axios 会自动将响应数据转换为 JSON 格式。
- 错误处理: Axios 具有强大的错误处理机制,可以方便地处理请求和响应中的错误。
- 单元测试友好: Axios 设计得非常模块化和易测试,这使得在单元测试中使用 Axios 变得简单。
前置技能
- Node JS
- JavaScript
- Promise
- AJAX
安装与引入
// node.js
npm install axios
// file
import axios from 'axios';
基本使用
axios( {
method: 'GET',
url: 'https://puji.design/rest-api'
} ).then( response => { console.log( response ) } );