Ajax
一、什么是 Ajax?
Ajax(Asynchronous JavaScript and XML)是一种无需重新加载整个网页,就能与服务器交换数据并更新页面部分内容的技术。
✅ 关键词:异步交互、局部刷新、数据交换
二、Ajax 的作用
- 数据交换:向服务器发送请求,获取响应数据。
- 异步交互:不刷新整个页面的情况下更新内容。
- 提升体验:用户操作流畅,如搜索建议、动态加载列表、表单验证等。
三、同步与异步的区别
类型 | 描述 |
---|---|
同步 | 客户端请求后,必须等待服务器响应才能继续后续操作。 |
异步 | 客户端发送请求后,不等待服务器响应,可继续执行其他任务,等响应回来再处理。 |
举个例子:
- 同步:打电话等人接听才能继续。
- 异步:发消息可以干别的,回复再处理。
四、Ajax 的实现方式
✅ 原生方式:XMLHttpRequest
传统的 Ajax 写法,繁琐但基本原理重要。
1 |
|
五、现代方式:Axios(推荐)
Axios
—— 一个对原生 Ajax 封装的第三方库,使用更简单,支持 Promise、兼容性更好。
基本使用步骤
引入 Axios(CDN 或 npm 安装)
1
<script src="https://cdn.jsdelivr.net/npm/axios/dist/axios.min.js"></script>
发送 GET 请求
1
2
3
4
5
6
7axios.get('https://api.example.com/list')
.then(res => {
console.log(res.data);
})
.catch(err => {
console.error(err);
});发送 POST 请求
1
2
3axios.post('https://api.example.com/add', { name: 'Tom' })
.then(res => console.log(res))
.catch(err => console.error(err));
六、Axios 请求参数说明
参数 | 说明 |
---|---|
method | 请求方式,如 GET、POST |
url | 请求地址 |
params | URL 查询参数(GET 用) |
data | 请求体参数(POST 用) |
headers | 自定义请求头信息 |
七、Axios 请求方式别名(推荐)
Axios 为常用请求提供了简洁别名形式:
1 |
|
八、结合 Vue 使用 Ajax
在 Vue 项目中,常在页面加载完成时发起 Ajax 请求。
示例:
1 |
|
利用 Vue 的 生命周期钩子函数,如 mounted()
,可以实现在页面加载完毕后自动请求数据。
九、使用 async / await(语法更优雅)
1 |
|
✅ 优点:
- 可读性强
- 结构清晰,适合复杂逻辑
总结一句话:
Ajax 是前端与服务器之间沟通的桥梁,Axios 是这座桥的高速通道。
本博客所有文章除特别声明外,均采用 CC BY-NC-SA 4.0 许可协议。转载请注明来源 Firefly!