2、 AJAX GET 请求案例
ajax基本使用准备代码如下:
2.1 前端代码:
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta http-equiv="X-UA-Compatible" content="IE=edge">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>AJAX GET 请求</title>
<style>
#result {
width: 200px;
height: 100px;
border: solid 1px;
}
</style>
</head>
<body>
<button>点击发送请求</button>
<div id="result"></div>
</body>
</html>
2.2 服务端代码:
参考本文 “1.4.1 express框架的基本使用” 中第四步代码,并作如下修改(仅修改第3部分)
当客户端浏览器向服务端发送请求时,如果url的路径(请求行的第二段内容)是‘/server’就执行回调函数里的代码,并且由response做出响应
2.3 运行结果
准备成功!!!
2.4 AJAX的基本操作
点击按钮返回响应行、响应头、响应体
<script>
//获取button元素
const btn = document.getElementsByTagName('button')[0];
//绑定事件
btn.onclick = function () {
//1.创建对象
const xhr = new XMLHttpRequest();
//2.初始化 设置请求方法和 url
xhr.open('GET', 'http://127.0.0.1:8000/server');
//3.发送
xhr.send();
//4.事件绑定 处理服务端返回的结果
//readystates 是xhr对象中的状态属性,表示状态0 1 2 3 4
xhr.onreadystatechange = function () {
//判断(服务器返回了所有结果)
if (xhr.readyState === 4) {
//判断响应状态码 200 404 403 401 500
//2xx 成功
if (xhr.status >= 200 && xhr.status < 300) {
//处理结果 行 头 空行 体
//1.响应行
console.log(xhr.status);//行里的响应状态码
console.log(xhr.statusText);//状态字符串
//2.所有响应头
console.log(xhr.getAllResponseHeaders());
//3.响应体
console.log(xhr.response);
} else {
}
}
}
}
</script>
2.5 AJAX设置请求参数
如何在Ajax请求 中如何设置url参数?
只需在url后面缀上参数
1.url与参数之间用?分割
2.多个参数用&分割
xhr.open('GET', 'http://127.0.0.1:8000/server?a=100&b=200&c=300');