一. AJAX到底是干什么的?
简单来说ajax就是用于客户端向服务器端发送请求的。
在现在这个前后端分离的时代,我们的客户端中的JS要通过ajax来向服务器端发送一个请求,并获取服务器返回的内容,最终进行客户端渲染。
二. 为什么不用普通的HTTP请求?
- AJAX通过xmlHttpRequest对象发送请求,服务器返回数据后无需重新加载整个网页,能够在这样的情况下更新网页局部。
- 普通HTTP请求通过httpRequest对象发送请求,服务器返回数据后需要重新刷新整个网页(一次HTTP请求对应一个页面)。
三. AJAX原生写法(JS)
- 创建一个对象
var xhr = new XMLHttpRequest();
2. 设置请求参数
xhr.open("GET","/xxxx",true);
3. 监听
xhr.onreadystatechange = function() {
if (xhr.readyState == 4) {
console.log('请求完成');
if (xhr.status >= 200 && xhr.status < 300){
console.log('请求成功');
}
}
}
4.发送请求
xhr.send();
5.简化以上步骤的写法
var xhr = new XMLHttpRequest();
xhr.open("GET","/xxxx",true);
xhr.onlosd = ()=>{ console.log('请求成功') }
xhr.send();
四. 封装了AJAX的库(例如JQuery.ajax)
$.get('/xxxx').then(function(response){
// 这里的 response 就是返回的内容
})
五. AJAX可以请求哪些格式的内容?
- XML 内容
- JSON 内容(最常用)
- HTML 内容
- CSS 内容
- JS 内容
- ...